Đại học Thái Nguyên
Trƣờng Đại học Công nghệ Thông tin và Truyền thông
LÊ MẠNH LINH
NHẬN DẠNG CỬ CHỈ BÀN TAY ỨNG DỤNG TRONG
ĐIỀU KHIỂN THIẾT BỊ ĐIỆN GIA DỤNG
LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH
Thái Nguyên - năm 2015
Số hóa bởi Trung tâm Học liệu - ĐHTN
http://www.lrc-tnu.edu.vn/
2
Đại học Thái Nguyên
Trƣờng đại học Công nghệ Thông tin và Truyền thông
LÊ MẠNH LINH
[
NHẬN DẠNG CỬ CHỈ BÀN TAY ỨNG DỤNG TRONG
ĐIỀU KHIỂN THIẾT BỊ ĐIỆN GIA DỤNG
LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH
Chuyên ngành: KHOA HỌC MÁY TÍNH
Mã số: 60 48 01 01
Số hóa bởi Trung tâm Học liệu - ĐHTN
http://www.lrc-tnu.edu.vn/
4
LỜI CAM ĐOAN
Em xin cam đoan về nội dung đồ án tốt nghiệp với tên đề tài “Nhận dạng
cử chỉ bàn tay ứng dụng trong điều khiển thiết bị điện gia dụng” không sao
chép nội dung cơ bản từ các luận văn khác, hay các sản phẩm tƣơng tự mà không
phải do em làm ra. Sản phẩm của luận văn là do chính bản thân em nghiên cứu và
xây dựng nên.
Nếu có gì sai em xin chịu mọi hình thức kỷ luật của Trƣờng Đại học Công
nghệ Thông tin và Truyền thông – Đại học Thái Nguyên.
Thái Nguyên, tháng 09 năm 2015
Học viên
Lê Mạnh Linh
Số hóa bởi Trung tâm Học liệu - ĐHTN
http://www.lrc-tnu.edu.vn/
5
MỤC LỤC
DANH MỤC CÁC HÌNH VẼ..................................................................................... 7
1.4.4.
Đặc trƣng Haar like ............................................................................... 19
CHƢƠNG II: CÁC KỸ THUẬT NHẬN DẠNG CỬ CHỈ BÀN TAY TRONG
VIDEO ...................................................................................................................... 23
2.1.
Kỹ thuật sử dụng mạng nơron ..................................................................... 23
2.2.
Kỹ thuật SVM (Suport Vector Machine) .................................................... 25
2.3.
Kỹ thuật sử dụng Boosting và mô hình Cascade ......................................... 31
2.3.1.
Tiếp cận Boosting ................................................................................. 31
2.3.2.
AdaBoost .............................................................................................. 32
2.3.3 Thuật toán AdaBoost trong mô hình Cascade sử dụng Boosting cho bộ
nhận dạng cử chỉ:................................................................................................ 35
2.3.4.
7
DANH MỤC CÁC HÌNH VẼ
Hình 1. 1 - Sơ đồ tổng quát của bài toán nhận dạng cử chỉ ...................................... 11
Hình 1. 2 - 10 vector đặc trƣng có ý nghĩa và 5 vector không mang thông tin ........ 14
Hình 1. 3 - Ảnh sau khi tính gradient chia thành các cell ......................................... 15
Hình 1. 4 - Đặc trƣng SIFT biểu diễn các điểm đặc biệt trong ảnh .......................... 16
Hình 1. 5 - Xác định điểm cực trị trong không gian tỉ lệ .......................................... 17
Hình 1. 6a,b,c - Các đặc trƣng đƣờng ....................................................................... 20
Hình 1. 7 Đặc trƣng Haar cho bàn tay ...................................................................... 21
Hình 1. 8 - Cách tính tổng các điểm ảnh trong một hình chữ nhật bất kì ................. 21
Hình 2. 1 - Mô hình mạng nơron theo Rowley ........................................................ 24
Hình 2. 2 - Ánh xạ dữ liệu từ không gian gốc sang không gian đặc trƣng cho phép
phân chia dữ liệu bởi siêu phẳng ............................................................................... 26
Hình 2. 3 - Siêu phẳng tách với khoảng cách lề cực đại ........................................... 27
Hình 2. 4 - Support Vectors ...................................................................................... 30
Hình 2. 5 - Minh họa Support Vectors ...................................................................... 30
Hình 2. 6 - Minh họa Boosting.................................................................................. 32
Hình 2. 7 - Minh họa thuật toán AdaBoost ............................................................... 33
Hình 2. 8 - Bộ phân loại mạnh H(x) xây dựng bằng AdaBoost ................................ 34
Hình 2. 9 - Bộ phân lớp CBC .................................................................................... 35
Hình 2. 10 - Cách chọn bộ phân loại yếu của AdaBoost .......................................... 37
Hình 2. 11 - Các ngƣỡng θ ........................................................................................ 38
Hình 2. 12 - Mô hình Cascade .................................................................................. 39
Hình 2. 13 - Các vùng không liên quan sẽ bị loại ngay từ những tầng đầu tiên ....... 46
Hình 2. 14 - Khắc phục trƣờng hợp nhiều vùng ảnh kế cận nhau bằng cách lấy vùng
ảnh trung bình ........................................................................................................... 46
Hình 2. 15 - Vùng ảnh lồng nhau .............................................................................. 47
Hình 3. 1 - Sơ đồ khối của hệ thống ......................................................................... 48
Hình 3. 2 - Khối nhận dạng cử chỉ ............................................................................ 49
9
CHƢƠNG I
TỔNG QUAN VỀ NHẬN DẠNG CỬ CHỈ
Nhận dạng là một ngành thuộc lĩnh vực học máy đã có lịch sử khá lâu, trong
thập kỷ 60 của thế kỷ XX, hầu hết vấn đề nhận dạng chỉ dừng lại ở việc nghiên cứu
lí thuyết thống kê. Về sau với sự phát triển mạnh mẽ của máy tính thì phần thực
nghiệm đã trở nên đơn giản hơn. Trong bối cảnh xã hội đang phát triển từ thời kỳ
công nghiệp sang hậu công nghiệp, đối với vấn đề tự động hóa thì việc thông tin
đƣợc nhận và xử lý một cách tự động là rất cần thiết. Khuynh hƣớng này làm cho
vấn đề nhận dạng mẫu trở nên rất quan trọng trong ứng dụng kỹ thuật và trong
nghiên cứu ngày nay. Nhận dạng mẫu tích hợp hầu hết vào các hệ thống máy móc
thông minh, có khả năng tự đƣa ra quyết định để giải quyết vấn đề.
Nhận dạngnhằm mục đích phân loại dữ liệu dựa trên thông tin thống kê đƣợc
trích rút từ các mẫu có sẵn. Các mẫu cần phân loại thƣờng đƣợc biểu diễn thành các
nhóm của các dữ liệu đo đạc hay quan sát đƣợc, mỗi nhóm là một điểm ở trong một
không gian đa chiều phù hợp. Không gian đa chiều này là không gian của các đặc
tính để dựa vào đó ta có thể phân loại.
Một hệ thống nhận dạng hoàn thiện gồm một thiết bị cảm nhận (sensor) để
thu thập các quan sát cần cho việc phân loại hay miêu tả; một cơ chế trích rút đặc
trƣng (feature extraction) để tính toán các thông tin dƣới dạng số hay dạng tƣợng
trƣng (symbolic) từ các dữ liệu quan sát đƣợc; và một bộ phân loại nhằm thực hiện
công việc phân loại dựa vào các đặc tính đã đƣợc trích rút.
Việc phân loại thƣờng dựa vào sự có sẵn của một tập các mẫu mà đã đƣợc
phân loại sẵn. Tập các mẫu này đƣợc gọi là tập huấn luyện và chiến lƣợc học nhằm
phân loại mẫu vào một trong các lớp có sẵn đƣợc gọi là học có giám sát. Việc học
cũng có thể là không có giám sát, theo nghĩa là hệ thống không đƣợc cung cấp các
mẫu đƣợc đánh nhãn (phân loại) trước, mà nó phải tự đƣa ra các lớp để phân loại
dựa vào tính ổn định trong thống kê của các mẫu.
Số hóa bởi Trung tâm Học liệu - ĐHTN
1.2.
Phân loại cử chỉ:
Cử chỉ đƣợc chia thành hai loai : cử chỉ tĩnh và cử chỉ động. Một cử chỉ tĩnh
đƣợc mô tả bởi một hình trạng duy nhất của cơ thể hoặc một bộ phận của cơ thể.
Một cử chỉ động là một chuỗi các hình trạng liên tiếp theo một quỹ đạo nhất định.
Dựa vào các bộ phận của cơ thể, ngƣời ta phân ra các lớp cử chỉ sau :
Cử chỉ của tay và cánh tay : Trợ giúp nói bằng tay, ứng dụng trong giải
trí (trò chơi tƣơng tác), điều khiển máy móc thông qua các cử chỉ.
Số hóa bởi Trung tâm Học liệu - ĐHTN
http://www.lrc-tnu.edu.vn/
11
Cử chỉ của đầu và gƣơng mặt : Hƣớng nghiêng của đầu, hƣớng nhìn của
mắt, hƣớng của lông mày, độ mở của miệng đƣợc sử dụng trong các bài
toán nhận dạng cảm xúc của con ngƣời (ứng dụng trong các hệ thống giao
tiếp thông minh).
Cử chỉ của cơ thể : Theo dõi toàn bộ chuyển động của ngƣời, phân tích
chuyển động của ngƣời nhảy để sinh ra nhạc và chiếu sáng tƣơng ứng,
nhận dạng phân tích dáng đi trong huấn luyện điền kinh, v.v..
Nhƣ vậy, cử chỉ của một con ngƣời rất phong phú và đa dạng. Có nhiều cách
thức để thể hiện một cử chỉ, và một cử chỉ có thể truyền đạt nhiều thông tin khác
nhau, đƣa ra các đáp ứng khác nhau với môi trƣờng.
1.3.
Mô hình bài toán nhận dạng cử chỉ:
Số hóa bởi Trung tâm Học liệu - ĐHTN
http://www.lrc-tnu.edu.vn/
12
Giai đoạn xây dựng mô hình huấn luyện
Giai đoạn này thực hiện việc xây dựng bộ nhận dạng cho từng cử chỉ. Dữ
liệu đƣợc lấy từ dữ liệu huấn luyện, qua quá trình tiền xử lý sau đó sẽ đƣợc trích
chọn các đặc trƣng. Các đặc trƣng đƣợc trích chọn sẽ làm đầu vào cho thuật toán
phân lớp. Kết quả trả về của giai đoạn này là các tập tin mô hình huấn luyện để
phục vụ cho quá trình nhận dạng.
Thu nhận tín hiệu, tiền xử lý
Nếu là hệ nhận dạng đối tƣợng vật lý, ở đầu vào của hệ thống thƣờng là một
loại thiết bị chuyển đổi nhƣ máy ghi hình hay ghi âm… Thiết bị này thu nhận tín
hiệu về đối tƣợng để nhận dạng. Các tín hiệu này thông thƣờng sẽ đƣợc số hóa, sau
đó sẽ đƣợc tiến hành tiền xử lý nhƣ : lọc nhiễu, tách ngƣỡng…
Trích chọn đặc trƣng
Các đặc điểm của đối tƣợng đƣợc trích chọn tuỳ theo mục đích nhận dạng
trong quá trình xử lý ảnh. Có thể nêu ra một số đặc điểm của ảnh sau đây:
Đặc điểm không gian: Phân bố mức xám, phân bố xác suất, biên độ, điểm
uốn v.v..
Đặc điểm biến đổi: Các đặc điểm loại này đƣợc trích chọn bằng việc thực
hiện lọc vùng (zonal filtering). Các bộ vùng đƣợc gọi là “mặt nạ đặc 10 điểm”
(feature mask) thƣờng là các khe hẹp với hình dạng khác nhau (chữ nhật, tam giác,
cung tròn v.v..).
Đặc điểm biên và đƣờng biên: Đặc trƣng cho đƣờng biên của đối tƣợng và
do vậy rất hữu ích trong việc trích trọn các thuộc tính bất biến đƣợc dùng khi nhận
dạng đối tƣợng. Các đặc điểm này có thể đƣợc trích chọn nhờ toán tử gradient, toán
tƣơng ứng với các cử chỉ).
1.4.
Một số đặc trƣng sử dụng biểu diễn cử chỉ bàn tay:
1.4.1. Đặc trưng các thành phần chính PCA:
Phƣơng pháp đơn giản nhất để phát hiện đối tƣợng là sử dụng cƣờng độ xám
hoặc màu của điểm ảnh để biểu diễn đối tƣợng. Phƣơng pháp này không đòi hỏi bất
kỳ một khâu trích chọn đặc trƣng nào cả. Tuy nhiên với phƣơng pháp này, một ảnh
kích thƣớc
sẽ đƣợc biểu diễn bởi một vector
pixel, thì không gian đặc trƣng có
thành phần. Với
,
chiều. So sánh và tìm
kiếm trong không gian có số chiều lớn sẽ rất tốn kém thời gian, nên ta cần giảm số
Số hóa bởi Trung tâm Học liệu - ĐHTN
http://www.lrc-tnu.edu.vn/
14
chiều không gian đặc trƣng này. Hơn nữa, việc biểu diễn này cũng không cho phép
15
1.4.2. Đặc trưng HOG
HOG viết là tắt của Histogram Orientation Gradient, ý tƣởng cơ bản của
HOG là hình dạng đối tƣợng trong ảnh có thể đƣợc đặc trƣng tốt bởi sự phân bố
theo hƣớng của sự thay đổi mức xám (gradient) hay theo hƣớng của biên đối tƣợng
[3]. HOG đƣợc tính bằng cách chia ảnh thành các vùng không gian nhỏ hơn gọi là
cell, mỗi cell này tích lũy histogram 1 chiều cục bộ của hƣớng gradient hoặc định
hƣớng biên trên các điểm ảnh của các cell. Các cell nằm cạnh nhau đƣợc gộp lại
thành một khối gọi là block, các block có thể chồng lên nhau với mục đích tăng
cƣờng mối quan hệ trong không gian giữa các điểm ảnh. Các histogram của khối
đƣợc kết hợp với nhau tạo thành vector đặc trƣng.
Hình 1. 3 - Ảnh sau khi tính gradient chia thành các cell
1.4.3. Đặc trưng SIFT
SIFT là viết tắt của Scale Invariant Feature Transforms - phép biến đổi đặc
tính bất biến tỉ lệ, do David G.Lowe[2] đề xuất. Đối với bất kỳ một đối tƣợng nào trong
ảnh sẽ có rất nhiều trƣng để mô tả, tuy nhiên David G.Lowe chỉ ra rằng các điểm đặc
biệt trên đối tƣợng có thể trích chọn mô tả tốt cho đối tƣợng. Mô tả này có thể đƣợc sử
dụng để xác định đối tƣợng trong một ảnh chứa rất nhiều đối tƣợng khác nhau. Các
thuộc tính SIFT của ảnh cung cấp một tập hợp các thuộc tính của một đối tƣợng mà
không ảnh hƣởng bởi sự phức tạp giống nhƣ các phƣơng pháp khác.
Số hóa bởi Trung tâm Học liệu - ĐHTN
http://www.lrc-tnu.edu.vn/
16
Trong đó
là toán tử tích chập;
là hàm Gause biến đổi tỉ lệ và
là ảnh đầu ra. Các kỹ thuật đa dạng có thể đƣợc sử dụng để phát hiện ra các
vị trí đặc biệt cố định trong không gian tỷ lệ. Vi phân của hàm Gause là một trong
các kỹ thuật đó, xác định cực trị của không gian tỉ lệ
khác nhau giữa 2 ảnh mà tỉ lệ gấp nhau k lần
Để xác định cực đại và cực tiểu của
bằng cách tính sự
đƣợc đƣa ra bởi công thức :
mỗi điểm đƣợc so sánh với 8
điểm lân cận của nó ở cùng một tỉ lệ. Nếu giá trị này là nhỏ nhất hoặc lớn nhất trong
tất cả các điểm thì điểm này là một cực trị.
Xác định vị trí của những điểm quan trọng (key point) :
Giai đoạn này loại trừ đi một số điểm trong danh sách các điểm có đƣợc
trong giai đoạn 1, đó là những điểm có tƣơng phản thấp hoặc có sự định vị mập mờ
về một cạnh. Điều này đƣợc tính toán bởi toán tử Laplace. Vị trí của các cực trị z
đƣợc đƣa ra bởi công thức :
Số hóa bởi Trung tâm Học liệu - ĐHTN
http://www.lrc-tnu.edu.vn/
http://www.lrc-tnu.edu.vn/
19
+ Một số điểm sẽ đƣợc chỉ định bởi nhiều sự định hƣớng.
+ Đặt một parabol đi qua 3 giá trị histogram gần nhất với đỉnh để nội
suy vị trí các đỉnh.
Mô tả các điểm quan trọng (Keypoint Descriptor) :
Dữ liệu về gradient cục bộ đƣợc sử dụng ở trên cũng đƣợc dùng để tạo
nên sự mô tả của các điểm đặc biệt. Thông tin về gradient đƣợc quay để các
đƣờng hƣớng lên với sự định hƣớng của điểm đặc biệt và sau đó đƣợc định
lƣợng bởi toán tử Gause với hệ số biến đổi 1.5 * tỉ lệ điểm đặc biệt. Dữ liệu này
sau đó đƣợc sử dụng để tạo một tập hợp của histogram trên một cửa sổ trung tâm
trên điểm đặc biệt.
Những mô tả điểm đặc biệt sử dụng một tập hợp 16 histogram, xếp hàng
thành lƣới
, với 8 hƣớng. Kết quả là vectơ định hƣớng sẽ có 8*16 = 128
thành phần.
1.4.4. Đặc trưng Haar like
Đặc trƣng Haar like [4] là một loại đặc trƣng thƣờng đƣợc dùng cho bài toán
nhận dạng trên ảnh. Haar like đƣợc xây dựng từ các hình chữ nhật có kích thƣớc
bằng nhau, dùng để tính độ chênh lệch giữa các giá trị điểm ảnh trong các vùng kề
nhau. Trong hình 2.6a và 2.6b, giá trị của feature cho bởi một ảnh bằng hiệu số giữa
tổng các điểm ảnh thuộc hai vùng hình chữ nhật sáng và tối. Trong hình 2.6c thì giá
trị feature bằng tổng các điểm ảnh trong hai vùng hình chữ nhật bên ngoài trừ cho
tổng các điểm ảnh trong hình chữ nhật ở giữa. Trong hình 2.6d, giá trị feature bằng
Trong quá trình huấn luyện, số lƣợng xử lý trên các Haar Feature là rất lớn,
việc tính tổng các điểm ảnh cho bởi từng feature làm cho thời gian xử lý tăng đáng
kể. Để khắc phục điều này, Viola và Jones đã đƣa ra khái niệm Integral Image [4]
để tính toán nhanh cho các feature cơ bản.
Hình 1. 8 - Cách tính tổng các điểm ảnh trong một hình chữ nhật bất kì
Số hóa bởi Trung tâm Học liệu - ĐHTN
http://www.lrc-tnu.edu.vn/
22
Với định nghĩa integral image tại điểm
là :
Tổng các giá trị pixel trong vùng “D” đƣợc tính nhƣ sau :
Khi đó, tổng các điểm ảnh trong môt hình chữ nhật bất kì có thể tính nhanh
dựa trên integral image tại 4 đỉnh của nó :
Số hóa bởi Trung tâm Học liệu - ĐHTN
http://www.lrc-tnu.edu.vn/
23
thì phải xác định rõ ràng số lƣợng tầng, số lƣợng node, tỷ lệ học v.v. cho từng
trƣờng hợp cụ thể.
Số hóa bởi Trung tâm Học liệu - ĐHTN
http://www.lrc-tnu.edu.vn/
24
Bài toán nhận dạng một cử chỉ của bàn tay cũng tƣơng tự nhƣ bài toán nhận
dạng khuôn mặt, bài toán nhằm giải quyết mục tiêu là phân loại ra lớp là cử chỉ và
không phải là cử chỉ. Vì vậy có thể tham khảo một số mô hình nhận dạng khuôn
mặt sử dụng mạng nơron cho mô hình nhận dạng cử chỉ.
Theo đánh giá các phƣơng pháp dùng mạng nơron để xác định khuôn mặt
ngƣời của nhiều tác giả, thì nghiên cứu của Rowley[5]đƣợc xem là tốt nhất đối với
ảnh xám. Rowley sử dụng mạng nơron nhiều tầng để học các mẫu khuôn mặt và
không phải khuôn mặt từ các ảnh có khuôn mặt và không chứa khuôn mặt. Khác với
nhiều phƣơng pháp trƣớc đó, ông dùng nhiều mạng nơron và vài phƣơng pháp phân
tách để tăng cƣờng hiệu quả việc phân loại. Hệ thống của ông có thể xem nhƣ gồm
hai thành phần chính:
Một hệ thống bốn mạng nơron để phát hiện các mẫu khuôn mặt. Đầu vào
của các mạng nơron là các vùng với kích thƣớc
pixel đã qua tiền xử
lí của ảnh vào, và đầu ra là một giá trị trong khoảng (-1, 1).
Một module thực hiện việc đƣa ra quyết định cuối cùng. Kết hợp các phát
hiện từ các mạng nơron từ đó sử dụng thêm phép toán logic và kĩ thuật bầu
cử để tăng hiệu quả.
một trong những phƣơng pháp phân loại có độ chính xác cao và là một phƣơng
pháp tƣơng đối tổng quát cho bài toán nhận dạng. SVM đƣợc xây dựng trên cơ sở
hai ý tƣởng chính :
Ý tƣởng thứ nhất : ánh xạ dữ liệu gốc sang một không gian mới gọi là
không gian đặc trƣng với số chiều lớn hơn sao cho trong không gian mới có
thể xây dựng một siêu phẳng cho phép phân chia dữ liệu thành hai phần riêng
biệt, mỗi phần bao gồm các điểm có cùng nhãn phân loại. Ý tƣởng ánh xạ
sang không gian đặc trƣng đƣợc minh hoạ trên hình 3.1.
Số hóa bởi Trung tâm Học liệu - ĐHTN
http://www.lrc-tnu.edu.vn/