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

Ứng dụng xử lý ảnh trong robot dùng phát giác chuyển động và nhận dạng đối tượng người quen

114 50 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

Định dạng
Số trang 114
Dung lượng 12,06 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

NHIỆM VỤ: - Tìm hiểu, phân tích thuật toán phát hiện và nhận dạng khuôn mặt người quen - Xây dựng chương trình và mô hình thực nghiệm ñánh giá khả năng ứng dụng của thuật toán III... Do

Trang 1

ĐẠI HỌC QUỐC GIA TP.HCM

TRƯỜNG ĐẠI HỌC BÁCH KHOA

-

NGUYỄN HỮU TÌNH

ỨNG DỤNG XỬ LÝ ẢNH TRONG ROBOT DÙNG PHÁT GIÁC CHUYỂN ĐỘNG VÀ NHẬN DẠNG

ĐỐI TƯỢNG NGƯỜI QUEN

Chuyên ngành: TỰ ĐỘNG HÓA

Mã số : 60.52.60

LUẬN VĂN THẠC SĨ

TP HỒ CHÍ MINH, tháng 04, năm 2014

Trang 2

CÔNG TRÌNH ĐƯỢC HOÀN THÀNH TẠI TRƯỜNG ĐẠI HỌC BÁCH KHOA –ĐHQG -HCM

Cán bộ hướng dẫn khoa học :

(Ghi rõ họ, tên, học hàm, học vị và chữ ký) Cán bộ chấm nhận xét 1 :

(Ghi rõ họ, tên, học hàm, học vị và chữ ký) Cán bộ chấm nhận xét 2 :

(Ghi rõ họ, tên, học hàm, học vị và chữ ký) Luận văn thạc sĩ ñược bảo vệ tại Trường Đại học Bách Khoa, ĐHQG Tp.HCM ngày tháng năm

Thành phần Hội ñồng ñánh giá luận văn thạc sĩ gồm: 1

2

3

4

5

Xác nhận của Chủ tịch Hội ñồng ñánh giá LV và Trưởng Khoa quản lý chuyên ngành sau khi luận văn ñã ñược sửa chữa (nếu có)

CHỦ TỊCH HỘI ĐỒNG TRƯỞNG KHOA

Trang 3

ĐẠI HỌC QUỐC GIA TP.HCM

TRƯỜNG ĐẠI HỌC BÁCH KHOA

CỘNG HOÀ XÃ HỘI CHỦ NGHĨA VIỆT NAM

Độc Lập – Tự Do – Hạnh Phúc _

NHIỆM VỤ LUẬN VĂN THẠC SĨ

Họ tên học viên : NGUYỄN HỮU TÌNH Mã số HV : 10150057

Ngày, tháng, năm sinh : 22/10/1983 Nơi sinh : Quảng Bình

I TÊN ĐỀ TÀI:

ỨNG DỤNG XỬ LÝ ẢNH TRONG ROBOT DÙNG PHÁT GIÁC

CHUYỂN ĐỘNG VÀ NHẬN DẠNG ĐỐI TƯỢNG NGƯỜI QUEN

II NHIỆM VỤ:

- Tìm hiểu, phân tích thuật toán phát hiện và nhận dạng khuôn mặt người quen

- Xây dựng chương trình và mô hình thực nghiệm ñánh giá khả năng ứng dụng của thuật toán

III NGÀY GIAO NHIỆM VỤ: 29/08/2011

IV NGÀY HOÀN THÀNH NHIỆM VỤ: 30/06/2012

Trang 4

Luận văn tốt nghiệp CBHDKH: Ts Nguyễn Đức Thành

LỜI CẢM ƠN

Trước tiên, xin cảm ơn thầy T.s Nguyễn Đức Thành ñã quan tâm, giúp ñỡ, ñịnh hướng và dành thời gian chỉ dẫn cho học viên trong suốt quá trình thực hiện ñề tài tốt nghiệp

Học viên cũng xin gửi lời cảm ơn ñến tất cả những thầy cô ñã trực tiếp giảng dạy trong suốt khóa học, những người bạn ñã quan tâm, ñộng viên và chia sẻ kiến thức cũng như kinh nghiệm chuyên ngành trong quá trình học tập và rèn luyện vừa qua của học viên

Cũng xin chân thành cảm ơn sự quan tâm hỗ trợ, tạo ñiều kiện và hết lòng ñộng viên về tinh thần lẫn vật chất của các thành viên trong gia ñình trong suốt thời gian qua

Sau cùng, học viên gởi lời chúc sức khỏe, hạnh phúc ñến quý thầy cô, gia ñình

và bạn bè

TP HCM, ngày … tháng … năm 20…

Học viên

Nguyễn Hữu Tình

Trang 5

Luận văn tốt nghiệp CBHDKH: Ts Nguyễn Đức Thành

Đề tài luận văn này, “ Ứng dụng xử lý ảnh trong robot dùng phát giác chuyển

ñộng và nhận dạng ñối tượng người quen” cũng không nằm ngoài ý nghĩa ñó Đây là một dạng ứng dụng thú vị mà nhiều nhà khoa học ñã, ñang và sẽ không ngừng nghiên cứu vì nhu cầu thực tiễn và ña dạng của các phương pháp tiếp cận

Trong ñề tài này sẽ trình bày các vấn ñề liên quan tới kiến thức nền tảng xây dựng nên luận văn Học viên ñã sử dụng thư viện mã nguồn mở EmguCV và ngôn ngữ

lập trình C#.Net trên nền Visual Studio 2010 ñể xây dựng ứng dụng Sử dụng thuật

toán AdaBoost ñể phát hiện khuôn mặt người và phương pháp phân tích thành phần chính (PCA) ñể nhận dạng khuôn mặt người quen (Eigenfaces)

Nội dung luận văn gồm 5 chương, cụ thể như sau:

Chương 1: Giới thiệu

Chương 2: Các công trình nghiên cứu liên quan

Chương 3: Cơ sở lý thuyết

Chương 4: Xây dựng chương trình va mô hình thực nghiệm

Chương 5: Kết luận và hướng phát triển ñề tài

Trang 6

Luận văn tốt nghiệp CBHDKH: Ts Nguyễn Đức Thành

Abstract

Face recognition and tracking presents a challenging problem in the field of image analysis and computer vision, and as such has received a great deal of attention over the last few years because of its many applications in various domains In this thesis, an overview of some of the well-known methods in each of these categories is provided and some of the benefits and drawbacks of the schemes mentioned therein are examined Thesis also mentions some of the most recent algorithms developed for this purpose and attempts to give an idea of the state of the art of face recognition technology

In this thesis describes an algorithm for human tracking using computer vision, specially designed for a human machine interface of a mobile robotic platforms The solution presents a clear improvement on a tracking algorithm achieved by using a machine learning approach for visual object detection and recognition The detection technique is based on Haar-like features, whereas eigenfaces and PCA are used in the recognition stage of the system The tracking algorithm uses a area method to estimate position and scale of the person’s face in the image

The author have used EmguCV and C# to build application Using AdaBoost algorithm for face detection and principal component analysis method (PCA) for faces recognition (Eigenfaces) The system is able to detect, recognise and track faces in a conventional Laptop (DELL, Core2 Duo CPU @ 2.4GHz, 3.00GB of RAM)

Trang 7

Luận văn tốt nghiệp CBHDKH: Ts Nguyễn Đức Thành

LỜI CAM ĐOAN

Xin cam ñoan: Đề tài luận văn “Ứng dụng xử lý ảnh trong robot dùng phát

giác chuyển ñộng và nhận dạng ñối tượng người quen” do thầy TS Nguyễn Đức Thành hướng dẫn là công trình nghiên cứu của riêng tôi Tất cả các tài liệu tham khảo ñều có nguồn gốc, xuất xứ rõ ràng

Tác giả xin cam ñoan tất cả nội dung trong luận văn ñúng như nội dung trong

ñề cương và yêu cầu của thầy hướng dẫn Nếu sai tôi hoàn toàn chịu trách nhiệm trước Hội ñồng khoa học và Pháp luật

Trang 8

Luận văn tốt nghiệp CBHDKH: Ts Nguyễn Đức Thành

MỤC LỤC

Trang

Lời cảm ơn i

Tóm tắt luận văn ii

Abstract iii

Lời cam ñoan iv

Mục lục v

Danh mục các hình viii

Danh mục các bảng xi

Danh mục các chữ viết tắt và ký hiệu xii

Chương 1 Giới thiệu 1

1.1 Tổng quan về bài toán nhận dạng và theo dõi khuôn mặt người quen 1

1.1.1 Đặt vấn ñề 1

1.1.2 Bài toán theo dõi và nhận dạng khuôn mặt người quen 2

1.1.3 Những khó khăn trong bài toán xác ñịnh khuôn mặt người 3

1.1.4 Các ứng dụng liên quan ñến nhận dạng và theo dõi khuôn mặt người 5

1.2 Mục tiêu và phạm vi ñề tài 8

1.2.1 Mục tiêu và nhiệm vụ nghiên cứu 8

1.2.2 Phạm vi nghiên cứu của ñề tài 8

1.2.3 Tổ chức luận văn 9

Chương 2 Các công trình nghiên cứu liên quan 11

2.1 Giới thiệu 11

2.2 Các hướng tiếp cận liên quan ñến phát hiện khuôn mặt 11

2.3 Các hướng tiếp cận liên quan ñến nhận dạng khuôn mặt 13

2.4 Kết luận 16

Chương 3 Cơ sở lý thuyết 17

3.1 Giới thiệu chung 17

Trang 9

Luận văn tốt nghiệp CBHDKH: Ts Nguyễn Đức Thành

3.2 Các thuật toán tiền xử lý ảnh 18

3.2.1 Một số khái niệm về xử lý ảnh số 18

3.2.2 Một số thuật toán xử lý ảnh 20

3.2.2.1 Chuyển ảnh màu thành ảnh ña mức xám 20

3.2.2.2 Chuyển ảnh ña mức xám sang ảnh nhị phân 20

3.2.2.3 Cân bằng Histogram 21

3.2.2.4 Điều chỉnh ñộ tương phản 24

3.2.2.5 Lọc nhiễu 25

3.3 Phát hiện khuôn mặt dùng giải thuật Adaboost và ñặc trưng Haar-like 28

3.3.1 Đặc trưng Haar-like 28

3.3.2 Thuật toán Adaboost 31

3.3.3 Phân tầng các bộ phân loại 36

3.3.4 Áp dụng giải thuật Adaboost phát hiện khuôn mặt người 34

3.4 Phương pháp nhận dạng khuôn mặt riêng dùng PCA 41

3.4.1 Không gian ảnh khuôn mặt 41

3.4.2 Nhận dạng khuôn mặt riêng dùng phương pháp PCA 43

3.5 Kết luận 47

Chương 4 Xây dựng chương trình và mô hình thực nghiệm 48

4.1 Giới thiệu chung 48

4.2 Xây dựng chương trình phát hiện và theo dõi khuôn mặt người quen 48

4.2.1 Xây dựng lưu ñồ và giải thuật chương trình 48

4.2.2 Xây dựng chương trình 50

4.2.2.1 Giới thiệu về EmguCV 50

4.2.2.2 Thu nhận hình ảnh từ Webcam 51

4.2.2.3 Phát hiện và trích xuất hình ảnh khuôn mặt 51

4.2.2.4 Xây dựng chương trình bám theo ñối tượng khuôn mặt 52

4.2.2.5 Nhận dạng khuôn mặt người quen 53

4.3 Xây dựng mô hình mobile robot 54

Trang 10

Luận văn tốt nghiệp CBHDKH: Ts Nguyễn Đức Thành

4.3.1 Giới thiệu về một số kiểu mobile robot thông dụng 54

4.3.2 Thiết kế và chế tạo mô hình mobile robot 57

4.3.3 Xây dựng mạch ñiện và chương trình ñiều khiển cho mobile robot 60

4.3.3.1 Mạch ñiều khiển 60

4.3.3.2 Xây dựng giải thuật và chương trình cho vi ñiều khiển 63

4.4 Kết quả thực nghiệm 65

4.4.1 Mô tả quá trình thực nghiệm 65

4.4.2 Kết quả thực nghiệm 66

4.4.3 Đánh giá kết quả thực nghiệm 69

4.5 Kết luận 69

Chương 5 Kết luận và hướng phát triển của ñề tài 70

5.1 Kết quả và ý nghĩa 70

5.1.1 Kết quả ñạt ñược 70

5.1.2 Hạn chế 70

5.1.3 Ý nghĩa ……….71

5.2 Hướng phát triển của ñề tài 71

Tài liệu tham khảo và trích dẫn 72

Phụ lục A: Một số khái niệm toán học 75

Phụ lục B: Chương trình xây dựng giải thuật bằng C#… …….……… 80

Phụ lục C: Chương trình vi ñiều khiển ATMEGA162 92

Lý lịch trích ngang 99

Trang 11

Luận văn tốt nghiệp CBHDKH: Ts Nguyễn Đức Thành

DANH MỤC CÁC HÌNH

Trang

Hình 1.1: Các bước chính trong hệ thống nhận dạng khuôn mặt người 2

Hình 1.2: Ảnh chụp trong ñiều kiện chiếu sáng khác nhau 3

Hình 1.3: Các hướng chụp hình khác nhau 4

Hình 1.4: Sự biểu cảm khác nhau của khuôn mặt 5

Hình 1.5: Một số thành phần của khuôn mặt bị che khuất 5

Hình 1.6: Phần mềm nhận dạng khuôn mặt Google Picasa 6

Hình 1.7: Phần mềm nhận dạng khuôn mặt Apple Iphoto 6

Hình 1.8: Phần mềm nhận dạng khuôn mặt FaceIt®Argus 7

Hình 1.9: Ứng dụng của công nghệ nhận dạng khuôn mặt 7

Hình 2.1: Các khuôn mặt riêng (Eigenfaces) 14

Hình 2.2: Phương pháp phân lớp dùng LDA 15

Hình 2.3: Mô hình lưới của các khuôn mặt khác nhau 16

Hình 3.1: Hệ tọa ñộ ảnh 18

Hình 3.2: Các khuôn mặt riêng (Eigenfaces) 19

Hình 3.3a: Ảnh màu 20

Hình 3.3b: Ảnh ña mức xám 20

Hình 3.4a: Ảnh ña mức xám 21

Hình 3.4b: Ảnh nhị phân 21

Hình 3.5: Biểu ñồ Histogram của ảnh xám 22

Hình 3.6: Biểu ñồ Histogram của các loại ảnh 22

Hình 3.7: Ảnh trước và sau khi cân bằng Histogram 23

Hình 3.8: Sơ ñồ giải thuật cân bằng Histogram 23

Hình 3.9: Biểu ñồ ñiều chỉnh ñộ tương phản 24

Hình 3.10: Ảnh trước và sau khi tăng cường ñộ tương phản 25

Trang 12

Luận văn tốt nghiệp CBHDKH: Ts Nguyễn Đức Thành

Hình 3.11: Các loại mặt nạ lọc tuyến tính 25

Hình 3.12: Minh họa phương pháp lọc tuyến tính dùng mặt nạ lọc H1 26

Hình 3.13: Ảnh minh họa kết quả phép lọc tuyến tính 27

Hình 3.14: Minh họa dùng cửa sổ 3x3 trong phép lọc trung vị 27

Hình 3.15: Ảnh minh họa so sánh kết quả các phép lọc tuyến tính 28

Hình 3.16: Bốn ñặc trưng Haar-like cơ bản 29

Hình 3.16a: Các ñặc trưng cạnh 29

Hình 3.16b: Các ñặc trưng ñường 29

Hình 3.16c: Các ñặc trưng bao quanh tâm 30

Hình 3.17: Cách tính ảnh tích phân 31

Hình 3.18: Cách tính nhanh giá trị mức xám của vùng ảnh A 31

Hình 3.19: Mô hình thuật toán AdaBoost 32

Hình 3.20: Kết hợp các bộ phân loại yếu thành bộ phân loại mạnh 33

Hình 3.21: Lưu ñồ giải thuật Adaboost 35

Hình 3.22: Phân tầng các bộ phân loại 37

Hình 3.23: Mô hình phân tầng kết hợp các bộ phân loại yếu xác ñịnh khuôn mặt 38

Hình 3.24: Hệ thống phát hiện khuôn mặt 39

Hình 3.25: Kết quả nhận dạng khuôn mặt trong ảnh 40

Hình 3.26: Chuyển ñổi hình ảnh 2D thành một vector không gian 41

Hình 3.27: Không gian ảnh khuôn mặt trong không gian ảnh tổng quát 42

Hình 3.28: Biễu diễn ảnh trong không gian vector 43

Hình 3.29: Tập ảnh mẫu huấn luyện 44

Hình 4.1: Sơ ñồ khối chức năng của chương trình 48

Hình 4.2: Sơ ñồ giải thuật chương trình 49

Hình 4.3: Cấu trúc tổng quát của Emgu CV 50

Hình 4.4: Robot hai chân BRAT 55

Hình 4.5: Robot nhiều chân 55

Hình 4.6: Robot di chuyển bằng ñai xích 56

Trang 13

Luận văn tốt nghiệp CBHDKH: Ts Nguyễn Đức Thành

Hình 4.7: Robot di chuyển bằng bánh xe 56

Hình 4.8: Hình vẽ 3D mô hình mobile robot 57

Hình 4.9: Kết quả xây dựng mô hình mobile robot 58

Hình 4.10: Chi tiết các thành phần mô hình mobile robot 59

Hình 4.11: Sơ ñồ khối mạch ñiều khiển 60

Hình 4.12: Sơ ñồ nguyên lý mạch ñiều khiển Atmega162 61

Hình 4.13: Sơ ñồ mạch cầu H ñiều khiển ñộng cơ DC 62

Hình 4.14: Sơ ñồ chân Atmega162 63

Hình 4.15: Lưu ñồ giải thuật chương trình vi ñiều khiển 64

Hình 4.16: Giao diện chương trình phát hiện, bám theo và nhận dạng mặt người 65

Hinh 4.17: Minh họa kết quả phát hiện và nhận dạng chính xác 67

Hinh 4.18: Phát hiện và nhận dạng ñược khi một thành phần khuôn mặt bị che khuất 67 Hình 4.19: Không phát hiện ñược khi khuôn mặt bị nghiêng 68

Hình 4.20: Minh họa kết quả nhận dạng sai 68

Trang 14

Luận văn tốt nghiệp CBHDKH: Ts Nguyễn Đức Thành

DANH MỤC CÁC BẢNG

Trang

Bảng 4.1: Kết quả thực nghiệm trương hợp góc nhìn và khoảng cách thay ñổi 66 Bảng 4.2: Kết quả nhận dạng với số lượng tập ảnh khác nhau 66

Trang 15

Luận văn tốt nghiệp CBHDKH: Ts Nguyễn Đức Thành

DANH MỤC CÁC CHỮ VIẾT TẮT

MMI Man Machine Interaction

AdaBoost Adaptive Boost

PCA Principal Component Analysis

SIFT Scale Invariant Feature Transform

LDA Linear Discriminant Analysis

EBGM Elastic Bunch Graph Matching

PWM Pulse Width Modulation

EEPROM Electrically Erasable Programmable Read-Only Memory

SRAM Static Random Access Memory

ADC Analog-to-digital converter

UART universal asynchronous receiver/transmitter

ALU Arithmetic Logic Unit

Trang 16

Luận văn tốt nghiệp CBHDKH: Ts Nguyễn Đức Thành

Chương 1 Giới thiệu

1.1 Tổng quan về bài toán theo dõi và nhận dạng khuôn mặt người

1.1.1 Đặt vấn ñề

Theo dõi và nhận dạng nhận dạng khuôn mặt người là một chủ ñề nghiên cứu của khoa học máy tính và công nghệ tri thức Trong vài năm gần ñây, cùng với sự phát triển về khoa học và công nghệ, tương tác người máy (Man Machine Interaction - MMI) ñã trở thành một lĩnh vực nổi bật nhằm cung cấp cho con người khả năng phục

vụ của máy móc Điều này bắt nguồn từ khả năng máy móc có thể tương tác ñược với con người Máy móc cần các kỹ năng ñể trao ñổi thông tin với con người và một trong những kỹ năng ñó là khả năng nhận dạng ñối tượng, biết ñược ñối tượng là ai và ñang làm gì?

Thực tế có nhiều phương pháp ñể xác ñịnh một ñối tượng ñó là ai ? Nhưng phương pháp nhận dạng sinh trắc học lại thu hút nhiều nhà nghiên cứu tham gia bởi tính chính xác và duy nhất các yếu tố sinh trắc học của một con người Nhìn chung trong tất cả các phương pháp nhận dạng sinh trắc học như: nhận dạng dấu vân tay, nhận dạng chỉ tay, nhận dạng mống mắt và nhận dạng giọng nói, nhận dạng khuôn mặt ñóng một vai trò quan trọng so với các phương pháp nhận dạng khác Ưu ñiểm của phương pháp nhận dạng khuôn mặt là mọi người không cần phải nhìn vào một máy quét mống mắt, hay ñặt bàn tay lên ñầu ñọc dấu vân tay, hoặc nói qua microphone

Do ñó, công nghệ nhận dạng khuôn mặt người ñược ứng dụng một cách rộng rãi cho các mục ñích như: robot vision có khả năng tương tác giúp việc cho con người, hỗ trợ an ninh cho các cửa hàng, công ty, ngân hàng, v.v Tuy nhiên không vì khả năng ứng dụng ña dạng của công nghệ nhận dạng khuôn mặt và kỹ thuật thị giác máy tính (computer vision), lĩnh vực này còn hấp dẫn các nhà nghiên cứu bởi nó không chỉ liên quan ñến kỹ thuật xử lý ảnh mà còn liên quan ñến trí tuệ nhân tạo và khoa học máy tính Trong những năm gần ñây, có rất nhiều nghiên cứu xây dựng thuật toán nhận

Trang 17

Luận văn tốt nghiệp CBHDKH: Ts Nguyễn Đức Thành

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êng, kích thước ảnh, hay ảnh hưởng của tham số môi trường Do ñó việc tìm hiểu kỹ lưỡng các phương pháp và giải thuật nhận dạng khuôn mặt, sau ñó xây dựng ứng dụng công nghệ này trong mobile robot là một ñiều cần thiết ñối với những người muốn nghiên cứu về lĩnh vực này

1.1.2 Bài toán nhận dạng và theo dõi khuôn mặt người

Hệ thống nhận dạng và theo dõi mặt người là một hệ thống nhận vào là tín hiệu video ñược lấy trực tiếp từ camera Qua xử lý tính toán hệ thống xác ñịnh ñược vị trí và kích thước của tất cả những khuôn mặt người hiện diện trong ảnh (nếu có), và xác ñịnh

là người nào trong số những người hệ thống ñã ñược biết (qua quá trình học) hoặc là người lạ Sau khi xác ñịnh ñược vị trí và kích thước của khuôn mặt trong ảnh, bằng phương pháp ñại số ta xác ñịnh ñược tầm khoảng cách và hướng di chuyển của khuôn mặt số với vị trí ñặt camera

Một hệ thống nhận dạng mặt người ñược minh họa như trên hình 1.1, bao gồm

bốn bước xử lý sau [1]: tiền xử lý (preprocessing images) , phát hiện khuôn mặt (face detection), rút trích ñặc trưng (feature extraction), và nhận dạng khuôn mặt (face

recognition)

Hình ảnh

Video

Nhận dạng khuôn mặt

Rút trích ñặc trưng

Phát hiện khuôn mặt Tiền xử lý

Chỉ số khuôn mặt (Face ID)

Hình 1.1: Các bước chính trong hệ thống nhận dạng khuôn mặt người

Trang 18

Luận văn tốt nghiệp CBHDKH: Ts Nguyễn Đức Thành

Tiền xử lý: là quá trình tiền xử lý ñối với khuôn mặt nhằm nâng cao chất lượng ảnh, chuẩn hóa dữ liệu và kích thước hình ảnh ñầu vào

Phát hiện khuôn mặt: là kỹ thuật dò tìm và ñịnh vị những vị trí khuông mặt xuất hiện trong ảnh hoặc trên các frame video

Trích rút ñặc trưng: là kỹ thuật sử dụng các thuật toán ñể lấy ra những thông tin mang những ñặc ñiểm riêng biệt của các thành phần trên khuôn mặt

Nhận dạng khuôn mặt: những ñặc trưng sau khi ñược trích rút sẽ là dữ liệu ñầu vào cho một mô hình ñã ñược huấn luyện trước ñể phân loại khuôn mặt

1.1.3 Những khó khăn trong bài toán xác ñịnh mặt người

Phát hiện và nhận dạng khuôn mặt trong ảnh có rất nhiều ứng dụng trong cuộc sống, bài toán này ñã ñược các nhà khoa học quan tâm và nghiên cứu trong hơn năm thập kỷ qua Tại thời ñiểm hiện nay các phương pháp nhận dạng khuôn mặt ñược sử dụng và thử nghiệm trong một số ñiều kiện ràng buộc nhất ñịnh Việc xác ñịnh khuôn mặt người có những khó khăn nhất ñịnh như:

Điều kiện chiếu sáng : Với những hình ảnh ñược chụp trong các ñiều kiện ánh sáng khác nhau minh họa như trên hình 1.2, ảnh hưởng rất lớn ñến chất lượng ảnh khuôn mặt và quá trình nhận dạng

Hình 1.2: Ảnh chụp trong ñiều kiện chiếu sáng khác nhau

Trang 19

Luận văn tốt nghiệp CBHDKH: Ts Nguyễn Đức Thành

Hướng chụp: Ảnh chụp khuôn mặt có thể thay ñổi rất nhiều bởi vì góc chụp

giữa Camera và khuôn mặt Chẳng hạn như: chụp thẳng, chụp xiên, chụp từ trên xuống, chụp từ dưới lên, v.v ñược minh họa như trên hình 1.3

Sự biểu cảm của khuôn mặt: Những biểu cảm khác nhau của khuôn mặt người

ñược minh họa như trên hình 1.4, sẽ làm ảnh hưởng ñáng kể lên các thông số của khuôn mặt

Hình 1.3: Các hướng chụp hình khác nhau

Trang 20

Luận văn tốt nghiệp CBHDKH: Ts Nguyễn Đức Thành

Một số thành phần của khuôn mặt bị che khuất: Ảnh khuôn mặt có thể bị

che khuất bởi các ñối tượng khác gây khó khăn cho quá trình nhận dạng như trong hình 1.5

1.1.4 Các ứng dụng liên quan ñến nhận dạng và theo dõi khuôn mặt người

Hệ thống nhận dạng khuôn mặt ñã ñược nghiên cứu và ứng dụng từ những năm

1960 cho ñến nay Hiện tại, công nghệ nhận dạng khuôn mặt ñã ñạt ñược một số thành tựu và phát triển ứng dụng trong các lĩnh vực như giám sát, công nghệ sinh trắc học, v.v… Trong quá trình nghiên cứu ta có thể tìm thấy một số ứng dụng liên quan ñến công nghệ nhận dạng khuôn mặt có thể kể như:

Google Picasa: Đây là một phần mềm quản lý và xử lý ảnh ảnh miễn phí của

Google Một trong những tính năng mới nhất của Picasa là tính năng nhận dạng khuôn

Hình 1.5: Một số thành phần của khuôn mặt bị che khuất

Hình 1.4: Sự biểu cảm khác nhau của khuôn mặt

Trang 21

Luận văn tốt nghiệp CBHDKH: Ts Nguyễn Đức Thành

mặt Theo Baker (2006) Google Picasa sử dụng phương pháp ñược gọi là “Neven Vison” ñể nhận dạng khuôn mặt người Phương pháp này có khả năng nhận dạng ñược các khuôn mặt người và các ñối tượng

Hình 1.6: Phần mềm nhận dạng khuôn mặt Google Picasa [28]

APPLE IPhoto: Phần mềm Apple Iphoto cũng có tính năng quản lý và xử lý

hình ảnh tương tự như Google Picasa nhưng chạy trên hệ ñiều hành Mac OS (Macintosh Operating System)

Hình 1.7: Phần mềm nhận dạng khuôn mặt Apple Iphoto [29]

Trang 22

Luận văn tốt nghiệp CBHDKH: Ts Nguyễn Đức Thành

FaceIt®Argus: Nhiều khi hình ảnh không thể ñược xác minh hay nhận ñạng chỉ

bằng công nghệ nhận dạng nét mặt Identix® ñã tạo ra một sản phẩm mới ñể giúp cho việc nhận diện chính xác hơn Phần mềm FaceIt®Argus của họ sử dụng công nghệ sinh trắc học về da, dựa trên cấu trúc da của mỗi người

Hình 1.8: Phần mềm nhận dạng khuôn mặt FaceIt®Argus [30]

Ngoài ra công nghệ nhận dạng khuôn mặt còn ñược ứng dụng trong các thống như: máy chấm công sử dụng công nghệ nhận dạng khuôn mặt, theo dõi và quan sát, giao tiếp người máy, bảo mật dựa trên thông tin sinh trắc học, v.v…

(a) Robot vision (b) Hệ thống theo dõi và quan sát

Hình 1.9: Ứng dụng của công nghệ nhận dạng khuôn mặt [26]

Trang 23

Luận văn tốt nghiệp CBHDKH: Ts Nguyễn Đức Thành

1.2 Mục tiêu và phạm vi ñề tài

1.2.1 Mục tiêu và nhiệm vụ nghiên cứu

Kỹ thuật xử lý ảnh nói chung và lĩnh vực thị giác máy tính nói riêng ñược nghiên cứu và ứng dụng mạnh mẽ trong nhiều lĩnh vực, trong ñó lĩnh vực nghiên cứu ứng dụng Robot vision có khả năng tương tác và phục vụ nhu cầu con người cũng ñược

nhiều nhóm nghiên cứu trong và ngoài nước quan tâm Chính vì vậy, mục ñích luận

văn này là xây dựng một hệ thống xử lý ảnh trên mobile robot, ứng dụng vào lĩnh vực

ñể phát hiện, nhận dạng và theo dõi khuôn mặt người quen ñang chuyển ñộng với chuỗi dữ liệu thu nhận ñược từ Webcam Cụ thể nhiệm vụ chính trong luận văn này như sau:

- Tìm hiểu, phân tích thuật toán phát hiện khuôn mặt và nhận dạng khuôn mặt riêng

- Xây dựng giải thuật và chương trình phát hiện, theo dõi và nhận dạng khuôn mặt

riêng dựa trên thư viện mã nguồn mở EmguCV và ngôn ngữ lập trình C#.Net

- Thiết kế và chế tạo mô hình mobile robot thực nghiệm có khả năng phát hiện, nhận

dạng và bám theo khuôn mặt người

1.2.2 Phạm vi nghiên cứu của ñề tài

Từ mục tiêu và nhiệm vụ ñặt ra, phạm vi nghiên cứu của ñề tài là xây dựng “ứng

dụng xử lý ảnh trong robot dùng phát giác chuyển ñộng và nhận dạng ñối tượng người quen”. Phạm vi nghiên cứu cụ thể như sau:

- Trong ñề tài này tác giả ñề xuất sử dụng giải thuật phát hiện khuôn mặt AdaBoost

(Adaptive Boost) dựa trên các ñặc trưng Haar-like, kết hợp thuật toán nhận dạng khuôn mặt riêng (Eigenfaces) dùng phương pháp phân tích thành phần chính

(Principal Component Analysis - PCA) ñể phát hiện và nhận dạng khuôn mặt người quen

Trang 24

Luận văn tốt nghiệp CBHDKH: Ts Nguyễn Đức Thành

- Chương trình ñiều khiển và giao diện hiển thị của ứng dụng ñược xây dựng dựa

trên thư viện mã nguồn mở EmguCV và ngôn ngữ lập trình C#.Net trên nền Visual Studio 2010

- Kết quả thực nghiệm của ñề tài ñược thực hiện dựa trên mô hình chế tạo là mobile

robot, ñược trang bị Webcam (Webcam Logitech C600, ñộ phân giải 1600 ×

1200, tốc ñộ 30 Frame/giây) kết nối với Laptop (DELL, Core2 Duo CPU @ 2.4GHz, 3.00GB of RAM) qua cổng USB 2.0

- Đối tượng thực nghiệm là dữ liệu frame ảnh khuôn mặt người ñược thu nhận trực

tiếp từ Webcam trong ñiều kiện môi trường ánh sáng khác nhau

Chương 2, tìm hiểu một số phương pháp tiếp cận và một số công trình nghiên cứu liên quan của các tác giả trong và ngoài nước, liên quan ñến lĩnh vực phát hiện và nhận dạng khuôn mặt người, phân tích ưu và nhược ñiểm của mỗi phương pháp, tạo cơ sở lựa chọn thuật toán phù hợp xây dựng chương trình ứng dụng của ñề tài

Chương 3, sẽ trình bày một số kỹ thuật xử lý ảnh số ñược sử dụng trong ñề tài Tìm hiểu và nghiên cứu thuật toán phát hiện khuôn mặt dùng giải thuật Adaboost kết hợp phương pháp phân tích thành phần chính PCA ñể nhận dạng khuôn mặt riêng (khuôn mặt người quen)

Trang 25

Luận văn tốt nghiệp CBHDKH: Ts Nguyễn Đức Thành

Chương 4, trình bày quá trình xây dựng chương trình phát hiện, nhận dạng và

bám theo ñối tượng mặt người Tiến hành các quá trình thực nghiệm ñể ñánh giá kết quả của chương trình và mô hình ñã thiết kế và xây dựng

Chương 5, tổng kết lại những kết quả ñạt ñược và chưa ñạt ñược, nêu những khả năng ứng dụng của ñề tài trong thực tế Từ ñó ñề xuất những hướng nghiên cứu và phát triển tiếp theo nhằm hoàn thiện và mở rộng ñề tài

Trang 26

Luận văn tốt nghiệp CBHDKH: Ts Nguyễn Đức Thành

Chương 2 Các công trình nghiên cứu liên quan

2.1 Giới thiệu

Hiện nay có rất nhiều thuật toán khác nhau ñược ñưa ra nhằm giải quyết bài toán phát hiện và nhận dạng khuôn mặt Nhưng do tính phức tạp và ña dạng của bài toán nên mỗi thuật toán xây dựng chỉ giải quyết ñược vấn ñề của bài toán trong một ñiều kiện và hoàn cảnh cụ thể Đã có rất nhiều giải pháp khác nhau ñược ñưa ra nhằm giải quyết bài toán phát hiện và nhận dạng khuôn mặt nhưng kết quả ñạt ñược vẫn còn hạn chế Chính vì vậy trong chương này tác giả xin trình bày tổng quan một

số hướng nghiên cứu và thuật toán phát hiện và nhận dạng khuôn mặt Nhằm mục ñích hiểu rõ và biết ñược khả năng ứng dụng của các thuật toán trong mỗi ñiều kiện hoàn cảnh cụ thể, tạo cơ sở ñể lựa chọn thuật toán phù hợp ñể xây dựng ứng dụng trong khuôn khổ của ñề tài này

2.2 Các hướng tiếp cận liên quan ñến phát hiện khuôn mặt

Hiện nay có nhiều hướng nghiên cứu liên quan ñến kỹ thuật phát hiện khuôn mặt ngườ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 trong ảnh hoặc video, chúng ta có thể phân loại các phương pháp này thành bốn hướng tiếp cận chính: dựa trên tri thức (knowledge-based), ñặc trưng bất biến (feature invariant), ñối sánh mẫu (template matching), và dựa vào diện mạo (appearance-based) [2]

Hướng tiếp cận dựa trên tri thức: Hướng tiếp cận này chủ yếu dựa trên những tập luật ñược ñịnh nghĩa trước về khuôn mặt người Những luật này thường

là các mối quan hệ giữa các thành phần trên khuôn mặt Dựa theo hướng tiếp cận này hai nhà khoa học Yang và Huang [3] ñã dùng phương pháp phân tích có thứ tự

ñể phát hiện khuôn mặt Hệ thống phát hiện khuôn mặt của hai ông bao gồm ba tầng luật như sau:

1.1 Tầng ñầu tiên: Tìm ra các ứng viên bằng cách dùng một cửa sổ quét toàn

bộ vùng ảnh ñầu vào, các ứng viên phải thỏa tập luật tầng này

Trang 27

Luận văn tốt nghiệp CBHDKH: Ts Nguyễn Đức Thành

1.2 Tầng giữa: Sử dụng các tập luật mô tả chung về khuôn mặt

1.3 Tầng cuối cùng: Dùng các tập luật xem xét một cách chi tiết các ñặc

trưng khuôn mặt ñể xác ñịnh chính xác khuôn mặt

Hệ thống phát hiện khuôn mặt của Yang và Huang khá ñơn giản, dễ thực hiện nhưng cho kết quả phát hiện chính xác khuôn mặt ñạt ñược không cao (khoảng 83%) Một công trình nghiên cứu khác cũng dựa theo hướng tiếp cận này ñó là phương pháp của Kotropoulos và Pitas [4] Phương pháp của hai ông cho kết quả phát hiện chính xác vị trí chứa khuôn mặt khoảng 86.5% bằng cách phân tích biểu

ñồ histogram của ảnh ña mức xám

Hướng tiếp cận dựa trên ñặc trưng bất biến: Các phương pháp nghiên cứu

ñi theo hướng tiếp cận này phải tìm ra ñược những ñặc trưng không thay ñổi của khuôn mặt ñể xác ñịnh chính xác khuôn mặt người Các ñặc trưng bất biến của khuôn mặt như: lông mày, mắt, mũi, miệng và ñường viền của tóc ñược trích bằng phương pháp phát hiện cạnh Sau ñó xây dựng một mô hình thống kê ñể mô tả quan

hệ của những ñặc trưng và xác ñịnh sự tồn tại của khuôn mặt trong ảnh Một vấn ñề của các thuật toán theo hướng tiếp cận ñặc trưng cần phải ñiều chỉnh cho phù hợp ñiều kiện ánh sáng, nhiễu, và không bị che khuất Đôi khi bóng của khuôn mặt sẽ tạo thêm cạnh mới, mà cạnh này lại rõ hơn cạnh thật sự của khuôn mặt, vì thế nếu dùng cạnh ñể xác ñịnh sẽ gặp khó khăn Dựa theo hương tiếp cận này hai nhà khoa học Cong Geng and Xudong Jiang (2009) ñã xây dựng thuật toán dựa trên các ñặc trưng cục bộ bất biến của khuôn mặt (Scale Invariant Feature Transform - SIFT) nhận dạng và phát hiện khuôn mặt [5] Một số công trình nghiên cứu trước ñây theo hướng tiếp cận này có thể kể như: K C Yow và R Cipolla 1997 [6], T K Leung

1995 [7]

Hướng tiếp cận dựa trên so khớp mẫu: Trong so khớp mẫu, các mẫu chuẩn của khuôn mặt (thường là khuôn mặt ñược chụp thẳng) sẽ ñược xác ñịnh trước hoặc xác ñịnh các tham số thông qua một hàm Từ một ảnh ñưa vào, tính các giá trị tương quan so với các mẫu chuẩn về ñường viền khuôn mặt, mắt, mũi và miệng

Trang 28

Luận văn tốt nghiệp CBHDKH: Ts Nguyễn Đức Thành

Thông qua các giá trị tương quan này mà các tác giả quyết ñịnh có hay không có tồn tại khuôn mặt trong ảnh Hướng tiếp cận này có lợi thế là rất dễ cài ñặt, nhưng không hiệu quả khi có sự thay ñổi về tỷ lệ, tư thế, và hình dáng Việc xuất hiện một khuôn mặt tại một vị trí nào ñó trong ảnh phụ thuộc vào giá trị tương ñồng của ñiểm

ñó so với mẫu chuẩn I Craw 1992 [8] ñã áp dụng một mẫu cứng trong khi A Lanitis 1995 [9] sử dụng một mẫu có thể biến dạng trong các bước phát hiện khuôn mặt

Hướng tiếp cận dựa trên diện mạo: Trái ngược với các phương pháp so khớp mẫu với các mẫu ñã ñược ñịnh nghĩa trước bởi những chuyên gia, các mẫu trong hướng tiếp cận này ñược học từ các ảnh mẫu Một cách tổng quát, các phương pháp theo hướng tiếp cận này áp dụng các kỹ thuật theo hướng xác suất thống kê và máy học ñể tìm những ñặc tính liên quan của khuôn mặt và không phải là khuôn mặt Các mô hình máy học sử dụng theo hướng tiếp cận này: Eigenface (M Turk và

A Pentland 1991 [10]), Mạng Nơ-ron (H Rowley 1998 [11]), Support Vector Machine (E Osuna et al 1997 [12]), Phân lớp Bayes (H Schneiderman và T.Kanade 1998 [13]), Mô hình Markov ẩn (A Rajagopalan et al 1998 [14]), và các

mô hình tăng cường (AdaBoost của P Viola và M Jones 2001 [15] [16]

2.3 Các hướng tiếp cận liên quan ñến nhận dạng khuôn mặt người

Phương pháp nhận dạng khuôn mặt riêng (người quen) luôn là một ñề tài khó

và thách thức ñược nhiều nhóm nghiên cứu trên thế giới ñã và ñang thực hiện Các phương pháp nghiên cứu liên quan ñến nhận dạng khuôn mặt riêng chủ yếu dựa trên hai hướng tiếp cận chính: dựa trên ñặc trưng hình học (geometrical - feature based),

và trắc quang (photometric - view based) Một số phương pháp nhận dạng khuôn mặt riêng dựa trên hai hướng tiếp cận này có thể kể như: phân tích thành phần chính (Principal Components Analysis - PCA), phân tích biệt số tuyến tính (Linear Discriminant Analysis - LDA), và phương pháp EBGM (Elastic Bunch Graph Matching)

Trang 29

Luận văn tốt nghiệp CBHDKH: Ts Nguyễn Đức Thành

Phương pháp phân tích thành phần chính (PCA): Năm 1988, T Kohonen

là người ñầu tiên ñưa ra phương pháp dùng các vector riêng ñể nhận dạng khuôn mặt [19] Ông ñã dùng một mạng neural ñơn giản ñể chứng tỏ khả năng của phương pháp này trên tập ảnh ñã ñược chuẩn hóa Mạng neural tính một mô tả của khuôn mặt bằng cách xấp xỉ các vector riêng của ma trận tương quan hình ảnh khuôn mặt Năm 1987, Kirby và Sirovich [20] chứng tỏ rằng các hình ảnh có chứa khuôn mặt

có thể ñược mã hóa tuyến tính bằng một số lượng vừa phải các hình ảnh cơ sở Tính chất này dựa trên biến ñổi Karhunen-Lòeve, hay còn ñược gọi dưới một cái tên khác

là PCA (Principle Components Analysis) hay phép biến ñổi Hotelling Ý tưởng này ñược xem là của Pearson ñề xuất vào năm 1901và sau ñó là Hotelling vào năm

1933 Cho một tập các ảnh huấn luyện có kích thước nxm ñược mô tả bởi các vector

có kích thước mxm Các tác giả gọi tập các vector cơ sở này là eigenfaces (khuôn

mặt riêng) sau ñó gọi cho ñơn giản là vector riêng của ma trận hiệp phương sai ñược tính từ các ảnh khuôn mặt ñã ñược vector hóa trong tập ảnh huấn luyện (hình 2.1)

Hình 2.1: Các khuôn mặt riêng (Eigenfaces)

Năm 1991, Matthew Turk và Alex Pentland ñã ñề xuất phương pháp dùng PCA ñể trích chọn các ñặc trưng của khuôn mặt [21] Khi biểu diễn lại ảnh khuôn

Trang 30

Luận văn tốt nghiệp CBHDKH: Ts Nguyễn Đức Thành

mặt dưới dạng vector mà mỗi thành phần trong vector tương ứng với một ñiểm ảnh, chỉ có một số rất ít trong số các tổ hợp có thể có là biểu diễn ảnh khuôn mặt Điều

ñó cho thấy không gian vector dùng ñể biểu diễn ảnh khuôn mặt dư thừa rất lớn Turk và Pentland ñã ñề xuất áp dụng PCA ñể trích chọn ñặc trưng khuôn mặt, giảm

số chiều của không gian vector biểu diễn, chỉ giữ lại các thành phần cơ bản nhất Phương pháp PCA chỉ có thể phát hiện chính xác mặt trước của khuôn mặt, khi khuôn mặt bị nghiêng thì khả năng phát hiện của phương pháp này giảm ñáng

kể Qua thực nghiệm cho thấy tốc ñộ xử lý của phương pháp bị ảnh hưởng rất lớn bởi ñộ phước tạp của nền ảnh xung quanh khuôn mặt và ñiều kiện ánh sáng thay ñổi Nhưng phương pháp này có khả năng ứng dụng trong thực tế cao bởi tính ñơn giản của phương pháp và cho thời gian huấn luyện nhanh

Phương pháp phân tích biệt số tuyến tính (LDA): Phương pháp sử dụng PCA tỏ ra hiệu quả với những ảnh không nhiễu Tuy nhiên, phương pháp PCA chưa thể cực tiểu hóa ñược sự chênh lệch giữa những phần tử trong cùng một lớp LDA

là một phương pháp thống kê ñể phân loại các mẫu của các lớp chưa biết dựa trên các mẫu huấn luyện với các lớp ñã biết [17] Kỹ thuật này nhằm mục ñích tối ña hóa sự khác nhau giữa các lớp và giảm thiểu sự khác nhau trong một lớp Hình 2.2, cho thấy mỗi khối ñại diện cho một lớp, có chênh lệch lớn giữa các lớp, nhưng có

sự chênh lệch ít trong mỗi lớp Khi làm việc với các dữ liệu khuôn mặt ña chiều, kỹ thuật này phải ñối mặt với vấn ñề kích thước mẫu nhỏ, phát sinh nơi có số lượng nhỏ các mẫu ñã ñược huấn luyện sẵn so với số chiều của không gian mẫu

Hình 2.2: Phương pháp phân lớp dùng LDA [17]

Trang 31

Luận văn tốt nghiệp CBHDKH: Ts Nguyễn Đức Thành

Phương pháp EBGM (Elastic Bunch Graph Matching): Phương pháp nhận dạng EBGM cho rằng hình ảnh khuôn mặt thực sự có nhiều ñặc tính phi tuyến không thể giải ñược bằng phương pháp phân tích biệt số tuyến tính, ñặc tính của khuôn mặt sẽ thay ñổi khi bị ảnh hưởng của các yếu tố như: ñiều kiện chiếu sáng (ánh sáng ngoài trời so với ñèn huỳnh quang trong nhà), tư thế (ñứng thẳng so với nghiêng) và cảm xúc khuôn mặt (cười so với giận giữ) Phép biến ñổi Gabor wavelet tạo ra một mô hình khuôn mặt dạng cấu trúc lưới ñàn hồi liên kết ñộng Như trên hình 2.3, các nút trên lưới ñàn hồi ñược gọi là các Gabor Jet, ñược ký hiệu bởi các vòng tròn mô tả ñặc ñiểm của khuôn mặt Đó là kết quả tích chập của hình ảnh ñầu vào với một bộ lọc Gabor, ñược sử dụng ñể phát hiện và trích xuất các các ñặc trưng của khuôn mặt cho quá trình nhận dạng Phương pháp này có thể nhận ñược khuôn mặt ở mọi tư thế, nhưng phương pháp này khó thực hiện bởi nó ñòi hỏi

vị trí chính xác của các nút trên mô hình lưới

Hình 2.3 Mô hình lưới của các khuôn mặt khác nhau [18]

2.4 Kết luận

Trong chương này tác giả ñã trình giới thiệu sơ lược về những phương pháp phát hiện khuôn mặt ñã ñược phát triển trong thời gian gần ñây Mỗi phương pháp giải quyết bài toán theo những hướng tiếp cận khác nhau, có những ñiểm mạnh và ñiểm hạn chế riêng Việc so sánh giữa những phương pháp khác nhau rất khó thực hiện và cũng chỉ mang tính tương ñối, bởi mỗi phương pháp ñược xây dựng nhằm giải quyết từng ngữ cảnh cụ thể, và hiện nay cũng chưa có một chuẩn nào ñể ñánh giá chất lượng của các phương pháp phát hiện khuôn mặt

Trang 32

Luận văn tốt nghiệp CBHDKH: Ts Nguyễn Đức Thành

Chương 3 Cơ sở lý thuyết

3.1 Giới thiệu chung

Hình ảnh hay chuỗi frame ảnh thu nhận ñược từ Webcam thường có chất lượng không tốt Do ñó ñể quá trình nhận dạng ảnh chính xác và hiệu quả hơn, trong một hệ thống xử lý ảnh cần phải có quá trình tiền xử lý ảnh nhằm mục ñích tăng cường ảnh và khôi phục ñể và làm nổi bật các ñặc trưng của ảnh

Mỗi thuật toán phát hiện và nhận dạng khuôn mặt có những ưu và nhược ñiểm riêng, việc lựa chọn sử dụng thuật toán ñể xây dựng ứng dụng còn tùy thuộc vào các tiêu chí cụ thể như: tốc ñộ phát hiện, tỷ lệ phát hiện khuôn mặt ñúng, tỷ lệ khuôn mặt không phát hiện ñược, tỷ lệ phát hiện sai khuôn mặt,v.v… Bài toán phát hiện khuôn mặt trong ảnh hay video là bài toán quan trọng vì quá trình nhận dạng ñối tượng sẽ thiếu chính xác nếu như thiếu bước phát hiện và xác ñịnh vị trí khuôn mặt Trong các phương pháp phát hiện khuôn mặt, phương pháp AdaBoost cho kết quả khả quan rất thích hợp cho việc phát hiện khuôn mặt trong thời gian thực Vì phương pháp này có thể xử lý ñến khoảng 15-20 khung hình trong một giây Song song với quá trình phát hiện là nhận dạng ñối tượng, bài toán nhận dạng khuôn mặt

sử dụng kỹ thuật PCA là phương pháp trích rút ñặc trưng nhằm giảm số chiều của ảnh tuy ñơn giản nhưng mang lại hiệu quả cao

Trong chương này sẽ trình bày một số thuật toán tiền xử ảnh ñược sử dụng trong ñề tài, phương pháp phát hiện khuôn mặt dùng giải thuật Adaboost và ñặc trưng Haar-like, nhận dạng khuôn mặt người quen eigenfaces dùng phương pháp PCA dựa trên một số khái niệm cơ bản toán học Các khái niệm cơ bản về toán học ñược dùng trong xử lý ảnh sẽ ñược trình bày chi tiết trong phần phụ lục A

Trang 33

Luận văn tốt nghiệp CBHDKH: Ts Nguyễn Đức Thành

3.2 Các thuật toán tiền xử lý ảnh

3.2.1 Một số khái niệm về ảnh số

Một hình ảnh tổng quát là một hàm theo hai biến f(x,y), trong ñó x và y là hai biến ứng với hai trục tọa ñộ nằm ngang và thẳng ñứng Giá trị của hàm f tại ñiểm (x,y) gọi là cường ñộ hay mức xám của ảnh tại ñiểm ñó Khi x, y, f là các giá trị hữu hạn, rời rạc, hình ảnh ñó ñược gọi là ảnh số

Hệ tọa ñộ ảnh: Giả sử một hình ảnh f(x,y) có M hàng và N cột, chúng ta nói rằng hình ảnh này có kích thước MxN Các giá trị dọc theo trục x và y là rời rạc Một hình ảnh biểu diễn trong hệ tọa ñộ 2D ñược mô tả như hình 3.1 Đây là hệ tọa

ñộ ảnh thường ñược dùng trong các giáo trình và phần mềm lập trình xử lý ảnh, còn trong Toolbox Image Processing của Matlab gốc hệ tọa ñộ ảnh là (1,1) [22]

Trang 34

Luận văn tốt nghiệp

Pixel: Một ảnh số bao g

này gọi là pixel Pixel là ph

của hình ảnh ban ñầu, hình

ñược thể hiện càng chính xác

Hình 3.2:

Ảnh Raster: Ảnh raster

pixel của hình ảnh raster

Oxy và có giá trị bao gồ

Hình 3.2: Ảnh ñược biểu diễn bởi các pixel [22]

raster hay còn gọi là ảnh bitmap, là tập hợp các pixel

raster sẽ ñược cố ñịnh tại một vị trí nhất ñịnh trong m

ồm nhiều thành phần liên quan ñến vị trí ñó c

ng các thành phần ñó, ảnh raster ñược chia thành các lo

hay còn gọi là ảnh nhị phân, trong ñó mỗi pixel

ột bit = 2^1=2 giá trị 0 (ñen) và 1 (trắng)

nh Grayscale: hay còn gọi là ảnh ña mức xám, trong ñ

c biểu diễn bằng một số 8 bit = 2^8 = 256 giá tr

nh chứa ñựng thông tin về màu sắc trong mỗ

i pixel bao gồm ba thành phần: ñỏ, xanh lá cây và xanh lam

i pixel ñược biểu

, trong ñó giá trị của

8 bit = 2^8 = 256 giá trị từ tối tới

ỗi pixel Giá trị , xanh lá cây và xanh lam (Red

Trang 35

Luận văn tốt nghiệp CBHDKH: Ts Nguyễn Đức Thành

3.2.2 Một số thuật toán xử lý ảnh

3.2.2.1 Chuyển ảnh màu thành ảnh ña mức xám

Để chuyển ảnh màu thành ảnh xám ta có thể dùng một trong hai công thức (3.1a) hoặc (3.1b) Kết quả chuyển ñổi ảnh màu thành ảnh xám ñược thể hiện như trong hình (3.4a) và (3.4b)

O(x,y)=( IR(x,y) + IG(x,y) + IB(x,y)) /3 (3.1a) O(x,y)= IR(x,y) * 0.287 + IG(x,y) * 0.599 + IB(x,y) * 0.114 (3.1b)

Trong ñó: x,y là tọa ñộ của ñiểm ảnh

IR thành phần màu ñỏ tại màu I(x,y)

IG thành phần màu xanh lá tại màu I(x,y)

IB thành phần màu xanh dương tại màu I(x,y)

O(x,y): màu ñầu ra, I(x,y): màu ñầu vào

3.2.2.2 Chuyển ảnh ña mức xám sang ảnh nhị phân

Để chuyển ảnh ña mức xám sang ảnh nhị phân ta viết chương trình kiểm tra

giá trị màu của mỗi pixel ảnh, nếu giá trị màu nhỏ hơn 128 thì cài ñặt giá trị là 0,

Hình 3.3a: Ảnh màu Hình 3.3b: Ảnh ña mức xám

Trang 36

Luận văn tốt nghiệp CBHDKH: Ts Nguyễn Đức Thành

ngược lại thì cài ñặt giá trị là 255 Hình (3.5a) và (3.5b) thể hiện kết quả chuyển ñổi

từ ảnh xám sang ảnh nhị phân

3.2.2.3 Cân bằng Histogram

Histogram là một lược ñồ biểu diễn ñộ sáng của một bức ảnh ñược minh họa như trên hình 3.6 Lược ñồ này bao gồm trục hoành biểu diễn cường ñộ sáng và trục tung biểu diễn số pixel tương ứng Đối với ảnh xám thông thường, giá trị của trục hoành nằm trong khoảng [0;255]

Histogram của một ảnh với các mức xám trong khoảng [ 0, 255] là một hàm rời rạc:

P (  

 ) ( 3.2) Trong ñó  là giá trị xám thứ k (k = 0, 1,…, 255), n là số pixel với mức xám

ñó, và n là tổng số pixel của bức ảnh

Nói một cách chính xác hơn Histogram p( h chính là xác suất của biến cố giá trị xám thứ k, xác suất này có giá trị trong khoảng [0,1] Ta cũng có thể biểu diễn Histogram của một ảnh bằng số lần xuất hiện của mỗi mức xám, ta có p(h = n

Hình 3.4a: Ảnh ña mức xám Hình 3.4b: Ảnh nhị phân

Trang 37

Luận văn tốt nghiệp CBHDKH: Ts Nguyễn Đức Thành

Dựa trên ñồ thị hàm p(h biểu diễn hình dạng Histogram của một ảnh sẽ cho chúng ta biết ñược ñặc ñiểm cuả ảnh là sáng hay tối, ñộ tương phản cao hay thấp ñược minh họa như trên hình 3.7

Hình 3.5: Biểu ñồ Histogram của ảnh xám [22]

Hình 3.6: Biểu ñồ Histogram của các loại ảnh [23]

Trang 38

Luận văn tốt nghiệp CBHDKH: Ts Nguyễn Đức Thành

Để cải thiện chất lượng ảnh ta cân bằng histogram, sao cho số ñiểm ảnh ở mỗi mức sáng tương ñương nhau Để cân bằng Histogram, ta sẻ biến ñổi xác suất p(h của từng giá trị xám sao cho chúng phân bố ñiều, cụ thể như sau:

     (3.3a) Hoặc:

Hình 3.7: Ảnh trước và sau khi cân bằng Histogram

Trang 39

Luận văn tốt nghiệp CBHDKH: Ts Nguyễn Đức Thành

trong Histogram, gk là giá trị xám của ảnh kết quả,  là giá trị Histogram ứng với

Trang 40

Luận văn tốt nghiệp CBHDKH: Ts Nguyễn Đức Thành

3.2.2.5 Lọc nhiễu

Nhiễu gây cho ta những khó khăn khi phân tích tín hiệu Vì vậy, kỹ thuật lọc

số miền không gian ñược ứng dụng Trong kỹ thuật này, người ta sử dụng một mặt

nạ và di chuyển khắp ảnh gốc Tùy theo cách tổ hợp diểm ñang xét với các ñiểm lân cận mà ta có kỹ thuật lọc không gian tuyến tính hay phi tuyến Ðiểm ảnh chịu tác ñộng của biến ñổi là ñiểm tâm mặt nạ

Lọc tuyến tính (Linear spatial filering): hay còn gọi là phương pháp lọc trung bình (mean filter), kỹ thuật lọc này dùng một mặt nạ 3x3, biểu thị bằng ma trận 3x3, nhân ma trận này với cường ñộ ñiểm ảnh láng giềng rồi cộng kết quả ñể ñược cường ñộ ñiểm giữa, còn gọi là tích chập (convolution), thường dùng các mặt

nạ như trên hình 3.11 Mặt nạ H1 là lấy trung bình, H2 ưu tiên cho ñiểm giữa, H3 ưu tiên cho hướng x,y

H. ./01 1 11 1 1

1 1 10 H1 

.01 1 11 2 1

1 1 10 H2 

.301 2 12 4 2

1 2 10 Hình 3.11: Các loại mặt nạ lọc tuyến tính [23]

Hình 3.10: Ảnh trước và sau khi tăng cường ñộ tương phản

b) ảnh ñược tăng cường ñộ tương phản a) ảnh cân bằng Histogram

Ngày đăng: 27/01/2021, 10:00

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1] Ion Marqués (2010), Face recognition Algorithms, Universidad del País Vasco Sách, tạp chí
Tiêu đề: Face recognition Algorithms
Tác giả: Ion Marqués
Nhà XB: Universidad del País Vasco
Năm: 2010
[2] Phạm Thế Bảo, Nguyễn Thành Nhựt, Cao Minh Thịnh, Trần Anh Tuấn, Phan Phú Doón (2007), “Tổng quan cỏc phương phỏp xỏc ủịnh khuụn mặt người” Sách, tạp chí
Tiêu đề: Tổng quan cỏc phương phỏp xỏc ủịnh khuụn mặt người
Tác giả: Phạm Thế Bảo, Nguyễn Thành Nhựt, Cao Minh Thịnh, Trần Anh Tuấn, Phan Phú Doón
Năm: 2007
[3] Gaungzheng Yang and Thomas S. Huang. “Human face detection in a complex background. Pattern Recognition”, 27(1):53–63, 1994 Sách, tạp chí
Tiêu đề: Human face detection in a complex background
Tác giả: Gaungzheng Yang, Thomas S. Huang
Nhà XB: Pattern Recognition
Năm: 1994
[4] C. Kotropoulos, I. Pitas, “Rule-based Face Detection in Frontal Views”, Proc. Int’l Conf. Acoustics, Speech and Signal Processing, pp. 2637- 2540, 1997 Sách, tạp chí
Tiêu đề: Rule-based Face Detection in Frontal Views
Tác giả: C. Kotropoulos, I. Pitas
Nhà XB: Proc. Int’l Conf. Acoustics, Speech and Signal Processing
Năm: 1997
[5] Cong Geng and Xudong, “Jiang Face recognition using SIFT features” ICIP'09 Proceedings of the 16th IEEE international conference on Image processing, pp.3277-3280, 2009 Sách, tạp chí
Tiêu đề: Jiang Face recognition using SIFT features
Tác giả: Cong Geng, Xudong
Nhà XB: ICIP'09 Proceedings of the 16th IEEE international conference on Image processing
Năm: 2009
[6] K. C. Yow, R. Cipolla, “Feature-Based Human Face Detection”, Image and Vision Computing, Vol. 15, No. 9, pp. 713-735, 1997 Sách, tạp chí
Tiêu đề: Feature-Based Human Face Detection
Tác giả: K. C. Yow, R. Cipolla
Nhà XB: Image and Vision Computing
Năm: 1997
[7] T. K. Leung, M.C. Burl, P. Perona, “Finding Faces in Cluttered Scenes Using Random Labeled Graph Matching”, Proc. 5th IEEE Conf. Computer Vision (ICCV’95), pp. 637-644, 1995 Sách, tạp chí
Tiêu đề: “Finding Faces in Cluttered Scenes Using "Random Labeled Graph Matching”
[8] I. Craw, D. Tock, A. Bennett, “Finding Face Features”, Proc. 2nd European Conf. Computer Vision (ECCV’92), Vol. 2, pp. 92-96, 1992 Sách, tạp chí
Tiêu đề: “Finding Face Features”
[9] A. Lanitis, C. J. Taylor, T. F. Cootes, “An Automatic Face Identification System Using Flexible Appearance Models”, Image and Vision Computing, Vol. 13, No.5, pp. 393-401, 1995 Sách, tạp chí
Tiêu đề: An Automatic Face Identification System Using Flexible Appearance Models
Tác giả: A. Lanitis, C. J. Taylor, T. F. Cootes
Nhà XB: Image and Vision Computing
Năm: 1995
[10] M. Turk, A. Pentland, “Eigenfaces for Recognition”, Journal of Cognitive Neuroscience, Vol. 3, No. 1, pp. 71-86, 1991 Sách, tạp chí
Tiêu đề: “Eigenfaces for Recognition”
[11] H. Rowley, S. Baluja, T. Kanade, “Neural network-based face detection”, IEEE Transaction on Pattern Analysis and Machine Intelligence (PAMI), Vol.20, No. 1, pp. 23-38, Jan 1998 Sách, tạp chí
Tiêu đề: Neural network-based face detection
Tác giả: H. Rowley, S. Baluja, T. Kanade
Nhà XB: IEEE Transaction on Pattern Analysis and Machine Intelligence (PAMI)
Năm: 1998

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w