Tải bản đầy đủ (.doc) (61 trang)

NGHIÊN CỨU THUẬT TOÁN VIOLAJONES ỨNG DỤNG PHÁT HIỆN VÀ ĐẾM 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.22 MB, 61 trang )

TRƯỜNG ĐẠI HỌC VINH
KHOA ĐIỆN TỬ VIỄN THÔNG
----------------

ĐỒ ÁN TỐT NGHIỆP
ĐỀ TÀI: NGHIÊN CỨU THUẬT TOÁN VIOLA-JONES ỨNG DỤNG PHÁT HIỆN VÀ ĐẾM
KHUÔN MẶT

Giáo viên hướng dẫn: ThS. Đinh Văn Nam
Sinh viên thực hiện:

Nguyễn Văn Hữu

MSSV:

1151080446

Lớp

:

52K - ĐTVT

Nghệ An, 2016


LỜI CẢM ƠN
Trong quá trình học tập và rèn luyện em đã được trang bị các kiến thức cơ
bản, chuyên môn cũng như kinh nghiệm thực tế để có thể hoàn thành tốt đồ án tốt
nghiệp của mình.
Trước hết em xin gửi lời cảm ơn đến thầy Th.S Đinh Văn Nam, người đã


giúp đỡ em rất nhiều về định hướng dẫn cho em trong suốt thời gian thực hiện đề tài
này.
Cuốn đồ án này được thực hiện theo đúng thời gian quy định của nhà
trường cũng như của khoa không chỉ là sự nỗ lực của em mà còn có sự giúp đỡ, chỉ
bảo của thầy hướng dẫn, của quý thầy cô và các bạn sinh viên.
Em xin chân thành cảm ơn quý thầy cô giáo trong khoa Điện tử - Viễn
thông đã quan tâm, hướng dẫn, truyền đạt lại kiến thức và kinh nghiệm cho em
trong suốt quá trình học tập tại trường.
Mặc dù đã cố gắng hoàn thành đồ án này song không tránh khỏi sai sót, em
mong thầy cô và các bạn đóng góp những ý kiến quý báu để đồ án được thành công
hơn.
Nghệ An, tháng 05 năm 2016
Sinh viên thực hiện

Nguyễn Văn Hữu

1


TÓM TẮT ĐỒ ÁN
Đồ án đi tìm hiểu thuật toán Viola-Jones. Trong đó có các đặc trưng HaarLike, thuật toán Adaboost và mô hình phân tầng Cascade để ứng dụng vào chương
trình phát hiện khuôn mặt con người có trong bức ảnh hoặc trong Webcam. Từ bài
toán phát hiện khuôn mặt có thể phát triển lên các ứng dụng điểm danh nhân viên
hoặc điếm số lượng người …
Từ đó em đã thiết kế và mô phỏng thành công chương trình phát hiện và
đếm số khuôn mặt trên cơ sở thuật toán Viola-Jones.

ABSTRACT
This thesis studying the Viola-Jones algorithm. Including the Haar-Like
features, Adaboost algorithm and Cascade Classification Model to apply into Face

Detection Program in a picture or in a Webcam. Frome the Face Detection Model
can improve the roll-call applications or counting people.
Conclution, I was designed and simulated successfully the detection and
counting Faces Programe based on Viola-Jones Algorithm.

2


MỤC LỤC
Hình 2.1. Độ phân giải của 1 ảnh; (a) Ảnh ban đầu có độ phân giải n=1;(b),(c), và (d) Ảnh có độ
phân giải n=4, 8, và 16.........................................................................................................................24
Hình 2.4. Chuyển ảnh sang ảnh tích phân...........................................................................................31
Hình 2.13. Đặc trưng Haar-Like phát hiện khuôn mặt........................................................................34

3


DANH MỤC BẢNG BIỂU
Hình 2.1. Độ phân giải của 1 ảnh; (a) Ảnh ban đầu có độ phân giải n=1;(b),(c), và (d) Ảnh có độ
phân giải n=4, 8, và 16.........................................................................................................................24
Hình 2.4. Chuyển ảnh sang ảnh tích phân...........................................................................................31
Hình 2.13. Đặc trưng Haar-Like phát hiện khuôn mặt........................................................................34

4


DANH MỤC HÌNH
Hình 2.1. Độ phân giải của 1 ảnh; (a) Ảnh ban đầu có độ phân giải n=1;(b),(c), và (d) Ảnh có độ
phân giải n=4, 8, và 16.........................................................................................................................24
Hình 2.4. Chuyển ảnh sang ảnh tích phân...........................................................................................31

Hình 2.13. Đặc trưng Haar-Like phát hiện khuôn mặt........................................................................34

5


CÁC TỪ NGỮ VIẾT TẮT
Từ viết tắt
GPS
Pixel
R
B
G
IMG
GIF
JPEG
MATLAB

Tiếng Anh

Tiếng Việt

Global Positioning System
Picture element
Red
Blue
Geen
Graphics Interchange Format
Joint Photo-graphic Experts
Group
Matrix Laboratory


Hệ thống định vị toàn cầu
Điểm ảnh
Màu Đỏ
Màu lam
Màu lục
Ảnh đen trắng
Định dạng Trao đổi Hình ảnh
Phương pháp nén ảnh JPEG
Phần mềm Matlab
Giao diện chương trình ứng

API

Application Program Interface

MFL
DE
GUI
PCA
PDF
ML
SVM

Mathematical Function Library
Development Environment
Graphical User Interface
Principal Component Analysis
Probility Density Function
Maximum Likelihood

Support Vector Machine

dụng
Thư viện Chức năng toán học
Tập hợp các công cụ
Giao diện đồ họa
Phân tích thành phần chính
Hàm mật độ xác suất
Phương thức cực đại khả năng
Máy vector hỗ trợ

Adaptive Boost

Thuật toán AdaBoost

AdaBoost

6


MỞ ĐẦU
Hơn một thập kỷ qua có rất nhiều bài toán nghiên cứu về xử lý ảnh nhất là
nhận diện khuôn mặt người từ ảnh đen trắng, xám đến ngày hôm nay là ảnh màu và
nhận diện trực tiếp từ camera. Các nghiên cứu đi từ bài toán đơn giản, mỗi ảnh chỉ
có một khuôn mặt người nhìn thẳng vào máy thu hình và đầu ở tư thế thẳng đứng
trong ảnh đen trắng. Cho đến hôm nay có thể nhận diện được khuôn mặt từ ảnh màu
nhiều khuôn mặt trên cùng một bức ảnh và nhận diện được nhiều khuôn mặt từ
camera. Ngày nay việc thu thập thông tin qua ảnh để nhận biết đối tượng đang được
quan tâm và ứng dụng rộng rãi, nhận diện khuôn mặt người từ camera là bước đầu
tiên quan trọng mở đầu cho các ứng dụng khác phát triển thêm. Với sự phát triển

của khoa học máy tình tạo môi trường thuận lợi cho bài toán nhận dạng khuôn mặt
người từ camera.
Bài toán nhận dạng khuôn mặt người là bài toán thú vị, nó vận dụng linh
hoạt các kiến thức trong nhiều lĩnh vực và có tính ứng dụng to lớn trong thực tế.
Đây là một chủ đề khá mới, những ứng dụng mang tính công nghệ cao như: robot,
các thiết bị theo dõi camera, các hệ thống bảo mật, nhận dạng…đã và đang được
nhiều công ty lớn áp dụng như facebook…nhằm nâng cao sản phẩm của mình để
cạnh tranh với các công ty khác trong thị trường.
Với những tính năng như vậy và từ nhu cầu thực tế, em đã chọn đề tài
“Nghiên cứu thuật toán Viola-Jones ứng dụng phát hiện và đếm khuôn mặt”.
Bài báo cáo được trình bày thành 3 chương như sau:
Chương 1: Tổng quan về công nghệ xử lý ảnh
Chương 2: Phương pháp phát hiện và nhận dạng ảnh
Chương 3: Thiết kế phần mềm và mô phỏng thuật toán phát hiện khuôn mặt
Nội dung của đề tài:
-

Tìm hiểu phương pháp nhận diện ảnh.

-

Nghiên cứu thuật toán Viola-Jones.
Dò tìm mặt người.
Đếm số lượng khuôn mặt.

Do khả năng và thời gian còn hạn chế nên đồ án này không tránh khỏi sai sót,
mong nhận được sự góp ý của thầy cô và các bạn để đồ án được hoàn thiện hơn.

7



Em xin chân thành cảm ơn ThS. Đinh Văn Nam đã tận tình hướng dẫn về
chuyên môn, phương pháp làm việc để em có thể hoàn thành đồ án theo kế hoạch
đặt ra. Em xin gửi lời cảm ơn chân thành đến các thầy cô giáo, các bạn trong Khoa
Điện tử Viễn thông đã tạo mọi điều kiện giúp em hoàn thành đồ án này.
Nghệ An, tháng 05 năm 2016
Sinh viên thực hiện

Nguyễn Văn Hữu

8


CHƯƠNG 1

TỔNG QUAN VỀ CÔNG NGHỆ XỬ LÝ ẢNH

1.1. Giới thiệu về xử lý ảnh
Xử lý ảnh là một trong những mảng quan trọng nhất trong kỹ thuật thì giác
máy tính, là tiền đề cho nhiều nghiên cứu thuộc lĩnh vực này. Hai nhiệm vụ cơ bản
của quá trình xử lý ảnh là nâng cao chất lượng thông tin ảnh và xử lý số liệu cung
cấp cho các quá trình khác trong đó việc ứng dụng thị giác vào điều khiển.
Quá trình bắt đầu từ việc thu nhận ảnh nguồn (từ các nguồn thu nhận ảnh
dạng số hoặc tương tự) gửi đến máy tính. Dữ liệu ảnh được lưu trữ dưới dạng phù
hợp với quá trình xử lý. Người lập trình sẽ tác động các thuật toán tương ứng lên
giữ liệu ảnh nhằm thay đổi cấu trúc phù hợp với các ứng dụng khác nhau.
Quá trình xử lý nhận dạng được xem như là quá trình thao tác ảnh đầu vào
nhằm cho kết quả mong muốn. Kết quả đầu ra của một quá trình xử lý ảnh có thể là
một bức ảnh đã được xử lý hoặc một kết luận.
Ảnh được xử


Ảnh

Xử Lý Ảnh

Hình 1.1. Quá trình xử lý ảnh
Kết thông
Luận tin đó lên
Con người thu nhận thông tin qua các giác quan rồi đưa các
não bộ để xử lý, trong đó thị giác đóng vai trò quan trọng nhất. Trong những năm
gần đây xử lý ảnh có đã phát triển một cách mạnh mẽ và có nhiều ứng dụng trong
cuộc sống. Xử lý ảnh đóng vai trò quan trọng trong sự tương tác người máy. Quá
trình xử lý ảnh được xem như là quá trình thao tác ảnh đầu vào nhằm cho kết quả.
Các phương phát xử lý ảnh bắt đầu từ các ứng dụng chính: Nâng cao chất
lượng ảnh và phân tích ảnh. Ứng dụng đầu tiên được biết đến là nâng cao chất
lượng ảnh báo được truyền đi bằng cáp từ Luân Đôn đến New York từ năm 1920.
Vấn đề nâng cao chất lượng ảnh có liên quan đến phân bố mức độ sang và độ phân
giải của ảnh. Việc nâng cao chất lượng ảnh được phát triển vào khoảng năm 1955.
Điều này có thể giải thích được vì sau thế chiến thứ 2, máy tính phát triển nhanh tạo
điều kiện cho xử lý ảnh thuận lợi. Năm 1964 máy tính đã có khả năng xử lý và nâng
cao chất lượng ảnh từ mặt trăng và vệ tinh Ranger 7 của Mỹ bao gồm: làm nổi
đường biên và lưu ảnh. Từ năm 1964 đến nay, các phương tiện xử lý ảnh, nâng cao

9


chất lượng phát triển và nhận dạng ảnh phát triển không ngừng. Các phương phát tri
thức nhân tạo như mạng nơ ron nhân tạo, các thuật toán xử lý hiện đại và cải tiến,
các công cụ nén ảnh được xử dụng rộng rãi và thu được nhiều kết quả khả quan.
Ảnh có thể xem là tập hợp các điểm ảnh và mỗi điểm ảnh được xem như là

đặc trưng cường độ sáng hay một dấu hiệu nào đó tại một vị trí nào đó của đối
tượng trong không gian và nó có thể xem như một hàm n biến P(c1, c2,..., cn). Do
đó, ảnh trong xử lý ảnh có thể xem như ảnh n chiều.

Hình 1.2. Sơ đồ tổng quát của một hệ thống xử lý ảnh
- Khối thu nhận ảnh: Có nhiệm vụ tiếp ảnh đầu vào.
- Khối tiền xử lý: Là giai đoạn đầu tiên của xử lý ảnh số. Tùy thuộc vào quá
trình tiếp theo trong công đoạn này sẽ thực hiện các công đoạn khác nhau như nhiệm
vụ nâng cao chất lượng ảnh như giảm nhiễu, khôi phục ảnh, phân vùng, tìm biên…
- Khối trích chọn đặc điểm: Các đặc điểm của đối tượng được trích chọn tùy
theo mục đích nhận dạng trong xử lý ảnh. Trích chọn hiệu quả các đặc điểm giúp
cho việc nhận dạng các đối tượng ảnh chích xác, với tốc độ tính toán cao và dung
lượng nhớ lưu trữ giảm, trích chọn các đặc trưng quan trọng của bức ảnh đã được
tiền xử lý để sử dụng trong hệ quyết định.
- Khối hậu xử lý: Có nhiệm vụ xử lý các đặc điểm đã trích chọn, có thể lược
bỏ hoặc biến đổi các đặc điểm này để phù hợp với các kỹ thuật cụ thể sử dụng trong
hệ quyết định.
- Khối hệ quyết định và lưu trữ: Có nhiệm vụ đưa quyết định và phân loại
dựa trên dữ liệu đã học lưu trong khối lưu trữ.
- Khối quyết định: Đưa ra kết luận.
1.2. Nhận dạng ảnh
10


Nhận dạng ảnh là quá trình phân loại các đối tượng biểu diễn theo một mô
hình nào đó và gán chúng vào một lớp theo những quy luật và mẫu chuẩn. Quá trình
nhận dạng dựa vào những mẫu học biết trước gọi là nhận dạng có thầy hay Học có
giám sát; trong trường hợp ngược lại gọi là Học không giám sát. Quá trình nhận
dạng gồm 3 giai đoạn chính:
- Lựa chon mô hình biểu diễn đối tượng.

- Lựa chọn ra luật quyết định (phương pháp nhận dạng) và suy diễn quá
trình học.
- Học nhận dạng.
Khi mô hình biểu diễn đã được xác định có thể định lượng (mô hình tham
số), có thể định tính (mô hình cấu trúc), quá trình nhận dạng chuyển sang giai đoạn
học. Học là giai đoạn rất quan trọng. Thao tác học nhằm cải thiện, điều chỉnh việc
phân hoạch tập đối tượng thành các lớp. Việc nhận dạng chính là tìm ra quy luật và
các thuật toán để có thể gán đối tượng vào một lớp hay nói một cách khác gán cho
đối tượng một tên.
Học có giám sát là kỹ thuật phân loại nhờ kiến thức biết trước. Đặc điểm cơ
bản của kỹ thuật này là người ta có một thư viện các mẫu chuẩn. Mẫu cần nhận
dạng sẽ được đem sánh với mẫu chuẩn để xem nó thuộc loại nào. Vấn đề chủ yếu là
thiết kế một hệ thống có thể đối sách đối tượng trong ảnh với mẫu chuẩn và quyết
định gán chúng vào một lớp.
Học không giám sát, kỹ thuật học này phải tự định ra các lớp khác nhau và
xác định các tham số đặc trưng cho từng lớp. Kỹ thuật này khá khó khăn vì do số
lớp không được biết trước và các đặc trưng của các lớp cũng không được biết trước.
Kỹ thuật này nhằm tiến hành mọi cách gộp nhóm có thể và chọn cách tốt nhất. Bắt
đầu từ tập dữ liễu, nhiễu thủ tục xử lý khác nhau nhằm phân lớp và phân cấp nhằm
để đạt được một phương phát phân loại.
Nhìn chung, dù là mô hình nào hay kỹ thuật nhận dạng nào thì một hệ thống
nhận dạng có sơ đồ như sau:

Trích chọn đặc
Phân lớp ra
Đánh giá
tính biểu diễn đối
quyết định
tượng
Hình 1.3. Sơ đồ tổng quát của một hệ thống nhận dạng

Khối nhận dạng

1.1. Ứng dụng của xử lý ảnh

11


Xử lý ảnh thực chất là việc thực hiện cái tính toán trên từng pixel của ảnh.
Xử lý ảnh nhằm giải quết các bài toán:
- Đo lường đối tượng: Xác định vết nứt trên tường từ camera, đo lường kích
cỡ chân ic, đo khoảng cách từ đối tượng đến camera, đo lường nhịp tim, nhiệt độ…
- Bám đối tượng: Sử dụng máy bay không người lái bán theo đối tượng nào
đó, sử dụng camera để giám sát đối tượng trong một phạm vi nhất định…
- Nhận dạng: Nhận dạng biển số xe, nhận dạng mặt người, nhận dạng dấu
vân tay, nhận dạng đám cháy, nhận dạng chữ viết…
- Phân loại: Phân loại sản phẩm theo màu sắc kích cỡ, đánh giá chất lượng
nông sản..
- Xây dựng phần mềm xử lý ảnh chuyên nghiệp như photoshop, camera
360….
- Trong lĩnh vực quân sự: các hệ thống có tích hợp quang hồng ngoại có khả
năng tự động điều khiển dàn hỏa lực được đặt trên trên địa cao xạ, trên xe tăng, tàu
chiến, máy bay, vệ tinh… Chúng được thanh thế, hỗ trợ các dàn radar dễ bị nhiễu
trong việc tự động phát hiện, cảnh giới và bám sát mục tiêu. Đặc biệt có những loại
lắp trên máy bay có khả năng điều khiển hỏa lực đánh phá hàng chục mục tiêu cùng
một lúc và các đầu tự dẫn tên lửa và đạn thông minh.
- Trong lĩnh vực an ninh và phòng chống tội phạm: Các hệ thống nhận dạng
khuôn mặt, nhận dạng vân tay tự động và phát hiện theo dõi cảnh bảo các âm mưu
và hoạt động của bọn khủng bố. Các Robot tự hành được gắn camera cũng được sử
dụng trong các môi trường độc hại, dò phá bom mìn và những nơi mà con người
không thể đến được.


12


Hình 1.4. Robot được gắn camera
- Trong lĩnh vực hàng không vũ trụ: Các hệ thống ống kính chụp ảnh viễn
thám lắp trên các vệ tinh bay quanh trái đất có thể chụp và quan sát được các vật
nhỏ kích cỡ 0.5m từ độ cao 750 Km. Việc ghép nối các ống kính này với hệ thống
GPS (Global Positioning System, hệ thống định vị toàn cầu) sẽ cho phép xây dựng
các bản đồ số được ứng dụng vào nhiều lĩnh vực cực kỳ quan trọng trong an ninh
quốc phòng, phát triển xã hội.
- Trong lĩnh vực công nghiệp, giao thông, xây dựng: Hệ thống quang điện
tử đóng trong vai trò thị giác máy có khả năng tự động đo đạc kiểm tra chất lượng
sản phẩm trong các dây chuyền sản xuất. Các hệ thống quang điện tử được ứng
dụng nhiều trong giao thông như đo tốc độ, tự động kiểm soát điều khiển và phân
luồng giao thông.

Hình 1.5. Camera bắn tốc độ
- Trong công nghiệp giải trí, truyền hình: Các hệ thống tích hợp tự động
điều khiển Camera kích thước và khối lượng lớn bám theo các đối tượng chuyến
động nhanh như các cuộc đua xe, bóng bay.
1.2. Giới thiệu về ảnh
1.4.1. Ảnh số
Ảnh số là tập hợp các điểm ảnh với mức xám phù hợp dùng để mô tả ảnh gần
với ảnh thật. Ảnh là một sự vật đại diện cho con người, sinh vật hay sự vật nào đó…
ảnh động như ta thấy trên truyền hình thực chất là tập hợp của rất nhiều ảnh tĩnh
liên tiếp. Khi một ảnh được số hóa thì nó trở thành ảnh số và ảnh số này lại là một
tập hợp của rất nhiều phần tử ảnh được gọi là điểm ảnh hay là “pixel”. Mỗi điểm
13



ảnh lại được biểu diễn dưới dạng một số hữu hạn các bit. Số điểm ảnh xác định độ
phân giải của ảnh. Ảnh có độ phân giải càng cao thì càng thể diện rõ nét các đặc
điểm của tấm hình càng làm cho tấm ảnh trở nên thực và sắc nét hơn. Ta có thể chia
ảnh ra làm ba phần khác nhau:
- Ảnh đen trắng: Mỗi điểm ảnh được biểu diễn bởi một bit.
- Ảnh Gray-scale: Mỗi điểm ảnh được biểu diễn bằng các mức chói khác
nhau, thưởng thì ảnh này được biểu diễn bằng 256 mức chói hay là 8 bit cho mỗi
điểm ảnh.
- Ảnh màu: Mỗi điểm ảnh chia ra thành tín hiệu chói và tín hiệu màu.
1.4.2. Biểu diễn ảnh số
Trong biểu diễn ảnh người ta thường dùng các phần tử đặc trưng của ảnh là
pixel. Nhìn chung có thể xem một hàm hai biến chứa các thông tin biểu diễn của
một ảnh. Các mô hình biểu diễn ảnh cho ta một mô ta logic hay định lượng các tính
chất của hàm này. Việc xử lý ảnh số phải được lấy mẫu và lượng tử hóa. Việc lượng
tử hóa là chuyển đổi tín hiệu tương tự sang tín hiệu số của một ảnh đã lấy sang một
số hữu hạn mức xám. Một số mô hình bình thường dùng biểu diễn ảnh: mô hình
toán, mô hình thống kê.
1.4.3. Ảnh màu
Như ta đã biết thì khi cho ánh sáng trắng đi qua lăng kính ta sẽ thu được một
dãy phổ màu bao gồm 6 màu rộng: Tím, lục, vàng, cam, đỏ. Nó không có ranh giới
rõ rang giữa các màu mà màu sẽ từ từ chuyển sang màu kia. Mắt chúng ta nhìn thấy
được là do ánh sáng phản xạ từ vật thể.
Tất cả các màu được tạo ra từ 3 màu cơ bản (màu sơ cấp) là: Đỏ (Red), lam
(Blue) và màu lục (Geen). Các màu cơ bản trộn lại với nhau theo tỷ lệ nhất định để
tạo ra các màu thứ cấp.
Phương trình màu:
Y=0.2989×R+0.58662×G +0.11448×B

(1.1)


14


Hình 1.6. Các màu cơ sở
Ví dụ: Vàng = Đỏ + Lục;
Xanh = Lục + Lam;
Tím = Lam + Đỏ;
Trộn ba màu sơ cấp hoặc trộn một màu thứ cấp với màu sơ cấp ngược với nó
sẽ tạo ra được ánh sáng trắng.
Các màu gốc có liên quan đến các khái niệm sinh học hơn là vật lý, nó dựa
trên sơ sở phản ứng sinh lý học của mắt người đối với ánh sáng. Mắt người có các
tế bào cảm quang có hình nón nên còn được gọi là tế bào hình nón, các tế bào này
thông thường có phản ứng cực địa với ánh sáng vàng- xanh là cây (tế bào hìn nón
L), xanh lá cây (tế bào hình nón M) và xanh lam (tế bào hình nón S) tương ứng với
các bước sóng khoảng 564 nm, 534 nm và 420 nm.
Các đặc trưng để phân biệt một màu với màu khác là : Độ sáng (Brightness),
sắc màu (Hue) và độ bão hòa màu (Saturation).
- Màu sắc có liên quan đến bước sóng ánh sáng. Thông thường, sắc màu
chính là tên của màu.
- Độ sáng thể hiện về cường độ ánh sáng: Mô tả nó sáng hay tối như thế
nào.
- Độ bão hòa màu : Thể hiện độ thuần khiết của màu. Khi độ bão hòa cao,
màu sẽ sạch và rực rỡ hơn.
Có nhiều mô hình màu như RGB, CYM, YIQ, CIE… Ở đây em chỉ trình bày
về mô hình màu RGB.

15



Hình 1.7. Mô hình màu RGB
Các màu Red, Green, Blue nằm ở các đỉnh trên trục tọa độ của khối vuông.
Màu đen nằm ở gốc tọa độ, màu trắng nằm ở góc xa nhất so với điểm gốc. Thang
màu xám kéo dài từ đen đến trắng.
Hình ảnh trong mô hình màu RGB bao gồm 3 mặt phẳng ảnh độc lập (dùng
cho các màu sơ cấp).
Thường thì ta giả thiết tất cả cá giá trị màu được chuẩn hóa (tức khối vuông
là đơn vị ), tất cả cá giá trị màu nằm trong khoảng [0,1].
Vì vậy trong hệ màu RGB cá màu có thể mô tả như là những điểm bên trong
hình lập phương. Ở gốc tọa độ (0; 0; 0) là màu đen. Trên các trục tọa độ dương là
các màu đỏ lục, lam. Khi đó ánh sáng từ các điểm riêng biệt sẽ được cộng với nhau
để tạo ta các màu khác nhau.
- (0, 0, 0) là màu đen.
- (255, 255, 255) là màu trắng.
- (255, 0, 0) là màu đỏ.
- (0, 255, 0) là màu xanh lá cây.
- (0, 0, 255) là màu xanh lam.
- (255, 255, 0) là màu vàng.
- (0, 255, 255) là màu xanh ngọc.
- (255, 0, 255) là màu hồng sẫm.
1.4.4. Các định dạng ảnh cơ bản trong xử lý ảnh
Ảnh thu được sau quá trình số hóa thường được lưu lại cho các quá trình xử
lý tiếp theo hay truyền đi. Trong quá trình phát triển của kỹ thuật xử lý ảnh, tồn tại
nhiều định dạng ảnh khác nhau từ ảnh đen trắng (với định dạng IMG), ảnh đa cấp
xám cho đến ảnh màu: (BMP, GIF, JPEG…).
- Định dạng ảnh IMG là ảnh đen trắng. Phần đầu của IMG có 16 byte chứa
thông tin.
16



- Định dạng ảnh GIF: GIF (viết tắt của Graphics Interchange Format; trong
tiếng Anh nghĩa là "Định dạng Trao đổi Hình ảnh") là một định dạng tập tin hình
ảnh bitmap cho các hình ảnh dùng ít hơn 256 màu sắc khác nhau và các hoạt hình
dùng ít hơn 256 màu cho mỗi khung hình. GIF là định dạng nén dữ liệu đặc biệt
hữu ích cho việc truyền hình ảnh qua đường truyền lưu lượng nhỏ. Định dạng này
được CompuServe cho ra đời vào năm 1987 và nhanh chóng được dùng rộng rãi
trên World Wide Web cho đến nay. Tập tin GIF dùng nén dữ liệu bảo toàn trong đó
kích thước tập tin có thể được giảm mà không làm giảm chất lượng hình ảnh, cho
những hình ảnh có ít hơn 256 màu. Số lượng tối đa 256 màu làm cho định dạng này
không phù hợp cho các hình chụp (thường có nhiều màu sắc), tuy nhiên các kiểu
nén dữ liệu bảo toàn cho hình chụp nhiều màu cũng có kích thước quá lớn đối với
truyền dữ liệu trên mạng hiện nay. Định dạng JPEG là nén dữ liệu thất thoát có thể
được dùng cho các ảnh chụp, nhưng lại làm giảm chất lượng cho các bức vẽ ít màu,
tạo nên những chỗ nhòe thay cho các đường sắc nét, đồng thời độ nén cũng thấp
cho các hình vẽ ít màu. Như vậy, GIF thường được dùng cho sơ đồ, hình vẽ nút bấm
và các hình ít màu, còn JPEG được dùng cho ảnh chụp. Định dạng GIF dựa vào các
bảng màu: một bảng chứa tối đa 256 màu khác nhau cho biết các màu được dùng
trong hình.

Hình 1.8. Ảnh GIF
- Định dạng JPEG: Phương pháp nén ảnh JPEG (Joint Photo-graphic
Experts Group) là một trong những phương pháp nén ảnh hiệu quả, có tỷ lệ nén ảnh
tới vài chục lần. Tuy nhiên ảnh sau khi giải nén sẽ khác với ảnh ban đầu. Chất lượng
ảnh bị suy giảm sau khi giải nén. Sự suy giảm này tăng dần theo hệ số nén. Tuy

17


nhiên sự mất mát thông tin này là có thể chấp nhận được và việc loại bỏ những
thông tin không cần thiết được dựa trên những nghiên cứu về hệ nhãn thị của mắt

người. Phần mở rộng của các file JPEG thường có dạng .jpeg, .jfif, .jpg, .JPG, hay
.JPE; dạng .jpg là dạng được dùng phổ biến nhất. Hiện nay dạng nén ảnh JPEG rất
được phổ biến trong điện thoại di động cũng như những trang thiết bị lưu giữ có
dung lượng nhỏ.
Công đoạn chính là chia nhỏ bức ảnh thành nhiều vùng nhỏ (thông thường là
những vùng 8x8 pixel) rồi sử dụng biến đổi cosin rời rạc để biến đổi những vùng
thể hiện này thành dạng ma trận có 64 hệ số thể hiện "thực trạng" các pixel. Điều
quan trọng là ở đây hệ số đầu tiên có khả năng thể hiện "thực trạng" cao nhất, khả
năng đó giảm rất nhanh với các hệ số khác. Nói cách khác thì lượng thông tin của
64 pixels tập trung chủ yếu ở một số hệ số ma trận theo biến đổi trên. Trong giai
đoạn này có sự mất mát thông tin, bởi không có biến đổi ngược chính xác. Nhưng
lượng thông tin bị mất này chưa đáng kể so với giai đoạn tiếp theo. Ma trận nhận
được sau biến đổi cosin rời rạc được lược bớt sự khác nhau giữa các hệ số. Đây
chính là lúc mất nhiều thông tin vì người ta sẽ vứt bỏ những thay đổi nhỏ của các hệ
số.
Như thế khi bung ảnh đã nén ta sẽ có được những tham số khác của các
pixel. Các biến đổi trên áp dụng cho thành phần U và V của ảnh với mức độ cao
hơn so với Y (mất nhiều thông tin của U và V hơn). Sau đó thì áp dụng phương
pháp mã hóa của Gernot Hoffman: Phân tích dãy số, các phần tử lặp lại nhiều được
mã hóa bằng ký hiệu ngắn (marker). Khi bung ảnh người ta chỉ việc làm lại các
bước trên theo quá trình ngược lại cùng với các biến đổi ngược.

18


Hình 1.9. Ảnh dạng JPEG
1.4.5. Pixel và các vấn đề liên quan
Ảnh tự nhiên là ảnh liên tục về không gian và độ sáng. Để xử lý bằng máy
tính (số), ảnh cần phải được số hóa. Số hóa là sự biến đổi gần đúng một ảnh liên tục
thành một tập điểm phù hợp với ảnh thật về vị trí (không gian) và độ sáng (mức

xám). Khoảng cách giữa các điểm ảnh đó được thiết lập sao cho mắt người không
phân biệt được ranh giới giữa chúng. Mỗi một điểm như vậy gọi là điểm ảnh (PEL:
Picture Element) hay gọi tắt là Pixel. Trong khuôn khổ ảnh hai chiều, mỗi pixel
ứng với cặp tọa độ (x,y).
Vậy điểm ảnh là một phần tử cảu ảnh số tọa độ (x, y) với độ xám hoặc màu
nhất định. Kích thước và khoảng cách giữa các điểm ảnh đó được chọn thích hợp
sao cho mắt người cảm nhận sự liên tục về không gian và mức xám (hoặc màu) của
ảnh số gần như ảnh thật. Mỗi phần tử trong ma trận được gọi là một phần tử ảnh.
Bảng 1.1. Pixel p và các pixel lân cận của p
P1
(x-1, y-1)

P2
(x-1, y)

P3
(x-1, y+1)

P4

P
(x, y)

P5
(x, y+1)

P7
(x+1, y)

P8

(x+1, y+1)

(x, y-1)
P6

(x+1, y-1)
Một pixel p tại các tọa độ (x,y) có ô pixel lân cận theo chiều dọc và chiều
ngang và tọa độ tương ứng của các pixel này là.
19


Bảng 1.2. Pixel p và các pixel lân cận theo chiều dọc và chiều ngang
P2
(x-1, y)

P7
(x+1, y)

P4

P5
(x, y+1)

(x, y-1)

Tập hợp các pixel này gọi là cá lân cận của p và ký hiệu là N4(p). Mỗi pixel
lân cận cách (x, y) một đơn vị và nếu (x, y) ở mép của màn hình thì sẽ có một pixel
lân cận của p nằm ở ngoài hình ảnh.
Ngoài 4 pixel lân cận của p theo chiều dọc và chiều ngang, xung quanh p
còn có 4 pixel chéo góc có các tọa độ tương ứng là.

Bảng 1.3. Pixel p và các pixel lân cận chéo góc
P1
(x-1, y-1)

P3
(x-1, y+1)

P6

P8
(x+1, y+1)

(x+1, y-1)
Tập hợp các pixel này được ký hiệu là ND(p). Bốn pixel này cùng với 4 pixel ở trên
tạo thành 8 pixel lân cận của p và được ký hiệu là N8 (p). Tập hợp này cũng sẽ có
một số pixel ở bên ngoài hình ảnh nếu (x, y) nằm ở mép hình ảnh.
Các mối liên kết được sử dụng để xác định giới hạn (Boundaries) của đối
tượng vật thể hoặc xác định vùng trong một ảnh. Một liên kết được đặc trưng bởi
tính liền kề giữa các điểm và mức xám của chúng.
Giả sử V là tập các giá trị mức xám. Một ảnh có các giá trị cường độ sáng từ
thang mức xám từ 32 đến 64 được mô tả như sau:
V = {32,33,….,64}

(1.2)

Có 3 loại liên kết đó là.
- Liên kết 4: Hai điểm ảnh p và q được nói là liên kết 4 với các giá trị cường
độ sáng V nếu q nằm trong một cá lân cận của p, tức q thuộc N4(p).
- Liên kết 8: Hai điểm ảnh p và q nằm trong một các lân cận 8 của p, tức q
thuộc N8(p).

- Liên kết m (liên kết hỗn hợp): Hai điểm ảnh p và q với các giá trị cường
độ sáng V được nói là liên kết m nếu.

20


1.q thuộc N4(p) hoặc
2.q thuộc NP(p).
Đo khoảng cách giữa các điểm ảnh.
Định nghĩa: Khoảng cách D(p,q) giữa hai điểm ảnh p tọa độ (s,t) là hàm.
Khoảng cách (Distance) hoặc Metric nếu :
1. D(p,q) ≥ 0 (với D(p,q) = 0 khi và chỉ khi p=q).
2. D(p,q) = D(q,p).
3. D(p,z) ≤ D(p,q) + D(q,z); z là một điểm ảnh khác.
Khoảng cách Euclide: Khoảng các Euclide giữa hai điểm ảnh p(x,y) và q(s,t)
được định nghĩa như sau:
De(p,q) = [(x – s)2 + (y – t)2]1/2
(1.3)
Khoảng cách khối: Khoảng cách D4(p,q) được gọi là khoảng cách khối đồ thị
(City-Block Distance) và khối được xác định như sau:
D4(p,q) = |x-s| + |y-t|
(1.4)
Giá trị khoảng cách giữa các điểm ảnh r là giá trị bán kính r giữa điểm ảnh từ
tâm điểm ảnh đến tâm điểm ảnh q khác. Ví dụ: Màn hình CGA 12” (12”*2,54 cm=
30,48cm = 304,8 mm) độ phân giải 320*200, tỷ lệ 4/3 (chiều dài/ chiều rộng). Theo
định lý Pitago về tam giác vuông, đường chéo sẽ lấy tỷ lệ 5 phần (5/4/3: đườn
chéo/chiều dài/chiều rộng màn hình), khi đó độ dài thật là (305/244/183) chiều rộng
màn hình 183 mm ứng với màn hình CGA 200 điểm ảnh theo chiều dọc. Như vậy,
khoảng cách điểm ảnh lân cận của CGA 12” là gần bằng 1 mm. Khoảng cách
D8(p,q) còn gọi là khoảng cách bàn cờ (Chess-Board Distance) giữa điểm ảnh p,q

được xác định như sau:
D8(p,q) = max( |x-s| , |y-t| )

(1.5)

21


CHƯƠNG 2 PHƯƠNG PHÁP PHÁT HIỆN KHUÔN MẶT
2.1. Phương pháp phát hiện khuôn mặt
2.1.1. Khái niệm phát hiện khuôn mặt
Phát hiện khuôn mặt (Face Detection) là một kỹ thuật máy tính để xác định
vị trí kích thước của mặt người trong các bức ảnh hay video. Kỹ thuật này nhận biết
được các đặc trưng của khuôn mặt mà bỏ qua các thứ khác như: Động vật, nhà , cây
cối….
2.1.2. Các phương pháp phát hiện khuôn mặt
Có nhiều phương pháp phát hiện khuôn mặt người, từ ảnh xám đến nay là
ảnh màu. Dựa vào các tính chất của các phương pháp phát hiện khuôn mặt trên ảnh.
Các phương pháp này được dựa trên 4 hướng tiếp cận chính. Ngoà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
qua 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ái hiểu biết của con người về
các loại khuôn mặt 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 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ả khuôn mặt người hay
các đặc trưng của khuôn mặt (các mẫu này phải được lựa chọn làm sao cho tách biệt
nhau theo tiêu chuẩn mà tác giả định ra để so sánh). Các mối quan hệ giữa dữ liệu
ảnh đưa vào và các mẫu dùng để xác định khuôn mặt con người.
- Hướng tiếp cận dựa trên các đặc trưng không thay đổi: Mục tiêu của thuật

toán đi tìm các đặc trưng mô tả cấu trúc khuôn mặt người mà các đặc trưng này sẽ
không thay đổi khi tư thế khuôn mặt, vị trí đặt thiết bị thu hình hoặc ánh sáng thay
đổi.
- Hướng tiếp cận dựa trên diện mạo: Trái ngược hẳn với mô hình so khớp
mẫu, các mô hình hay các mẫu được học từ các ảnh được tập huấn luyện trước đó.
Sau khi 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.
a. Hướng tiếp cận dựa trên tri thức

22


Trong hướng tiếp cận này, các luật sẽ phụ thuộc rất lớn vào tri thức của
những tác giả nghiên cứu về bài toán xác định khuôn mặt người. Đây là hướng tiếp
cận dạng top-down. Dễ dàng xây dựng các luật cơ bản để mô tả các đặc trưng của
khuôn mặt và các quan hệ tương ứng. Ví dụ, một khuôn mặt thường có hai mắt đối
xứng nhau qua trục thẳng đứng ở giữa khuôn mặt và có một mũi, một miệng. Các
quan hệ của các đặc trưng có thể được mô tả như quan hệ về khoảng cách và vị trí.
Thông thường các tác giả sẽ trích đặc trưng của khuôn mặt trước tiên để có được
các ứng viên, sau đó các ứng viên này sẽ được xác định thông qua các luật để biết
ứng viên nào là khuôn mặt và ứng viên nào không phải khuôn mặt. Thường áp dụng
quá trình xác định để giảm số lượng xác định sai.
Một vấn đề khá phức tạp khi dùng hướng tiếp cận này là làm sao chuyển từ
tri thức con người sang các luật một các hiệu quả. Nếu các luật này quá chi tiết (chặt
chẽ) thì khi xác định có thể xác định thiếu các khuôn mặt có trong ảnh, vì những
khuôn mặt này không thể thỏa mãn tất cả các luật đưa ra. Nhưng các luật tổng quát
quá thì có thể chúng ta sẽ xác định lầm một vùng nào đó không phải là khuôn mặt
mà lại xác định là khuôn mặt. Và cũng khó khăn mở rộng yêu cầu từ bài toán để xác
định các khuôn mặt có nhiều tư thế khác nhau.
Có hai tác giả Yang và Huang đã dùng một phương thức theo hướng tiếp cận

này để xác định các khuôn mặt. Hệ thống của hai tác giả này bao gồm ba mức luật.
Ở mức cao nhất, dùng một khung cửa sổ quét trên ảnh và thông qua một tập luật để
tìm các ứng viên có thể là khuôn mặt. Ở mức kế tiếp, hai ông dùng một tập luật để
mô tả tổng quát hình dáng khuôn mặt. Còn ở mức cuối cùng lại dùng một tập luật
khác để xem xét ở mức chi tiết các đặc trưng khuôn mặt. Một hệ thống đa độ phân
giải có thứ tự được dùng để xác định (hình 2.2).

23


Hình 2.1. Độ phân giải của 1 ảnh; (a) Ảnh ban đầu có độ phân giải n=1;(b),(c), và
(d) Ảnh có độ phân giải n=4, 8, và 16.
Các luật ở mức cao nhất để tìm ứng viên như: “vùng trung tâm khuôn mặt
(phần tối hơn trong hình 2.3) có bốn phần với một mức độ đều cơ bản”, “phần xung
quanh bên trên của một khuôn mặt (phần sáng hơn trong hình 2.3) có một mức độ
đều cơ bản” và “mức độ khác nhau giữa các giá trị xám trung bình của phần trung
tâm và phần bao bên trên là đáng kể”. Độ phân giải thấp nhất (mức mộ) của ảnh
dùng để tìm ứng viên khuôn mặt mà còn tìm ở các mức phân giải tốt hơn. Ở mức
hai, xem xét biểu đồ histogram của các ứng viên để loại bớt ứng viên nào không
phải là khuôn mặt, đồng thời dò ra cạnh bao xung quanh ứng viên. Ở mức cuối
cùng, những ứng viên nào còn lại sẽ được xem xét các đặc trưng của khuôn mặt về
mắt và miệng. Hai ông đã dùng một chiến lược “từ thô đến mịn” hay “làm rõ dần”
để giảm số lượng tính toán trong xử lý. Mặc dù tỷ lệ chính xác chưa cao, nhưng đây
là tiền đề cho nhiều nghiên cứu sau này.

Hình 2.2. Một loại trí thức của người nghiên cứu phân tích trên khuôn mặt
b. 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.
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 tỷ lệ, tư thế và hình dáng thay đổi (đã được chứng
minh). Nhiều độ phân giải, đa tỷ lệ, các mẫu con và các mẫu biến dạng được xem
xét thành bất biến về tỷ lệ và hình dáng.

24


×