1. Trang chủ
  2. » Kỹ Thuật - Công Nghệ

XÂY DỰNG mô HÌNH điều KHIỂN THIẾT bị DÙNG cử CHỈ bàn TAY (có code)

38 272 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 38
Dung lượng 3,94 MB

Nội dung

Ngoài ra, nhận dạng cử chỉ bàn tay còn có khả năng ứng dụng vào việcgiao tiếp với người bị câm, điếc…1.2 Mục tiêu đề tài Đề tài “Xây dựng mô hình điều khiển thiết bị dùng cử chỉ bàn tay

Trang 1

ĐỒ ÁN TỐT NGHIỆP

XÂY DỰNG MÔ HÌNH ĐIỀU KHIỂN THIẾT BỊ DÙNG CỬ CHỈ BÀN TAY

Trang 2

CHƯƠNG 1 TỔNG QUAN VỀ ĐỀ TÀI

1.1 Giới thiệu về nhận dạng cử chỉ bàn tay

Với sự phát triển của khoa học ngày nay, sự tương tác giữa robot và con người

đã trở thành một lĩnh vực được chú ý Hiện tại có rất nhiều kỹ thuật nhận dạngđược nghiên cứu như: nhận dạng dấu vân tay, nhận dạng khuôn mặt người, nhậndạng ký tự/chữ/số Và nhận dạng cử chỉ bàn tay cũng được nghiên cứu và đưavào sử dụng rộng rãi Cử chỉ bàn tay được đưa vào sử dụng hiệu quả nhằm đưa ralệnh cho robot thực thi

Một số ứng dụng:

• Người và máy tính có thể tương tác với nhau

• Tương tác với các thiết bị ngoại vi

• Ứng dụng khác

Hình 1- 1 Hình ảnh về sử dụng TV với cử chỉ bàn tay Error: Reference source not

found

Trang 3

Ngoài ra, nhận dạng cử chỉ bàn tay còn có khả năng ứng dụng vào việcgiao tiếp với người bị câm, điếc…

1.2 Mục tiêu đề tài

Đề tài “Xây dựng mô hình điều khiển thiết bị dùng cử chỉ bàn tay” sẽ thực hiệnbao gồm xây dựng mô hình nhận dạng được cử chỉ bàn tay dùng phần mềmMATLAB2016a, kết hợp với máy tính có sẵn webcam để thu thập cử chỉ (đếm sốngón tay) để điều khiển các thiết bị trong nhà như TV, đèn, quạt, …

1.3 Nội dung thực hiện

Đề tài thực hiện gồm các nội dung chính như sau:

- Tìm hiểu lý thuyết về xử lý ảnh và lý thuyết về nhận dạng cử chỉ bàn tay

o Các khái niệm cơ bản về ảnh/ảnh số

o Các kỹ thuật xử lý ảnh cơ bản

o Các phương pháp/kỹ thuật nhận dạng

- Tìm hiểu phương pháp phân tích thành phần chính (P C A) và các ứngdụng

- Lập trình ứng dụng nhận dạng cử chỉ trên MATLAB và thực hiện đánh giá

o Xây dựng CSDL cử chỉ dùng cho huấn luyện và đánh giá

o Lập trình xử lý ảnh bàn tay cho nhận dạng dùng P C A

- Xây dựng hệ thống áp dụng kỹ thuật nhận dạng cử chỉ cho việc điều khiểnthiết bị

o Thu thập ảnh cử chỉ qua ảnh có sẵn và webcam

o Kết hợp vi điều khiển để điều khiển các thiết bị trong nhà như TV,đèn, quạt, …

Trang 4

2.1.2 Mức xám của ảnh

Hình 2- 1 Các mức xám.Error: Reference source not found

Mức xám là kết quả cho sự mã hoá tương ứng cường độ sáng của mỗiđiểm ảnh, với một giá trị số Cách mã hoá thường dùng 16, 32 hay 64 mức

Mã hoá 256 mức là phổ biến nhất vì 28 = 256 (0, 1 255), nên với 256 mức,mỗi pixel sẽ được mã hoá bằng 8 bit ( hay 1 byte)

2.1.3 Phân loại ảnh

Ảnh nhị phân

Mỗi một điểm ảnh được biểu diễn bằng 1 bit Giá trị của các điểm ảnhchỉ được nhận hai giá trị 0 hoặc là 1

Trang 5

Hình 2- 2 Biểu diễn cho 2 mức trắng và đen.Error: Reference source not found

Hình 2- 3 Ảnh nhị phân.Error: Reference source not found

Ảnh xám

Giá trị của 1 điểm ảnh nằm trong tập [0 255], 1 điểm ảnh biểu diễn bằng

1 byte ( hoặc 8 bits )

Trang 6

Hình 2- 4 Ảnh xám.Error: Reference source not found

Ảnh màu

Hình 2- 5 Ảnh màu R G B.Error: Reference source not found

o Hệ màu R G B là chế độ hiển thị màu sắc tự nhiên của màn hình CRT, màn hình LCD và màn hình plasma Hệ màu R G B là hệ màu là tốt

nhất cho thiết kế: thiết kế website, hình ảnh kỹ thuật số, thiết kế các tàiliệu quảng cáo trực tuyến…

o Hệ màu C M Y K là một mô hình màu trong đó tất cả các màu

được mô tả như là một hỗn hợp của các quá trình hòa trộn của

bốn màu sắc C M Y K là mô hình màu được sử dụng trong in

offset cho các tài liệu đầy đủ màu sắc

Trang 7

o Hệ màu YcbCr : là một trong những hệ của không gian màu được

dùng như là một phần của đường dẫn ảnh màu trong video và các

hệ thống mô hình nhiếp ảnh kỹ thuật số

1.1.1.1 Phương pháp phân tích thành phần chính P C A

Trang 8

P C A – Principaul Components Analysiss : Là phương pháp đơn giản nhất

để phát hiện đối tượng , sử dụng cường độ xám hoặc màu của điểm ảnh để biểudiễn đối tượng Phương pháp này nhằm giảm số chiều của ảnh mà vẫn có thể giữđược lượng thông tin lớn nhất

1.1.1.2 Phương pháp phân tích thành phần độc lập I C A

I C A - Indepeudent Compouent Analysis: Để định nghĩa I C A, ta có thể dụng

mô hình các biến ẩn thống kê, n biến ngẫu nhiên x1, …, xn, là tổ hợp tuyến tính của

n biến ngẫu nhiên s1… sn dưới dạng:

xi = ai1s1 + ai2s2 +…+ ainsn , i = 1,2,…,n

với aij (i, j = 1, …, n) là các hệ số thực Các si là độc lập thống kê với nhau Môhình cơ bản của I C A chính là giải quyết bà i toán x As cùng với các điều kiệnràng buộc sau:

• Nguồn tín hiệu gốc ban đầu độc lập thống kê với nhau

• Ma trận trộn A là ma trận vuông

• Tối đa chỉ được có 1 nguồn tín hiệu gốc có phân bố Ganss

Phương pháp I C A giải bài toán x As bằng phương pháp thống kê thông quaviệc ước lượng vector y = Wvx (đặt Wv = Av-1)

1.1.1.3 Phương pháp H O G (Histosgram Ogrientations Grandient)

Là hình dạng đối tượng trong ảnh được đặc trưng khá tốt vì sự phân bố

theo sự thay đổi mức xám hay theo hướng của biến đối tượng H O G được tính

bằng cách chia ảnh thành nhiều vùng không gian nhỏ hơn, gọi là cell, mỗi 1cell này, tích lũy “histosgram” 1 chiều cục bộ của hướng “gradient” hoặc địnhhướng biên trên các điểm ảnh của cell Những cell nằm cạnh nhau được gộp lạithành một khối gọi là “blocks”, “blocks” được chồng lên nhau nhằm tăng cườngmối quan hệ trong không gian giữa các điểm ảnh Các “histogram” của khối đượckết hợp với nhau tạo thành vector đặc trưng

1.1.1.4 Phương pháp sử dụng mạng “nơrons”

Mạng “nơrons” nhân tạo được xây dựng để mô hình một số tính chất củamạng “nơrons” sinh học Đa số các ứng dụng lại có bản chất kỹ thuật Mạngnơrons nhân tạo được gọi là máy mô phỏng cách bộ não hoạt động thực hiện các

Trang 9

nhiệm vụ của nó Một mạng nơron là bộ xử lý song song phân tán lớn, nógiống như bộ não người về 2 mặt:

• Tri thức được nắm bắt bằng mạng “nơrons” thông qua các quá trìnhhọc

• Độ lớn của trọng số kết nối “nơrons” đóng vai trò là các khớp nốilưu giữ thông tin

1.1.1.5 Phương pháp S V M (Suported Vectort Maching)

S V M là phương pháp phân loại tự động tương đối mới do Vapnik [3] đưa ravào năm 1995 Nhiều thử nghiệm với các ứng dụng khác nhau cho thấy

S V M là một trong những phương pháp phân loại có độ chính xác cao và là mộtphương pháp tương đối tổng quát cho bài toán nhận dạng

Như vậy, để thực hiện việc nhận dạng cử chỉ tay trong đề tài “Xây dựng

mô hình điều khiển thiết bị dùng cử chỉ bàn tay”, phương pháp nhận dạngđược lựa chọn là phương pháp phân tích thành phần chính P C A bởi vì đượctiến hành một cách đơn giản và dễ thực hiện nhất Thêm vào đó P C A rất hữu íchtrong các ứng dụng nhận dạng cơ thể và nén ảnh, và là một kỹ thuật phổ biến để tìmmẫu trong các dữ liệu nhiều chiều Chất lượng và độ chính xác khi xử lý ảnh dùngphương pháp P C A đạt rất cao

2.2.3 Khái niệm nhận dạng cử chỉ bàn tay

Nhận dạng cử chỉ bàn tay, phương pháp sử dụng kĩ thuật máy tính nhằmxác định được những cử chỉ, chuyển động của bàn tay Trong đề tài “ Xây dựng môhình điều khiển thiết bị dùng cử chỉ bàn tay ” sẽ đếm được số ngón tay trong hìnhảnh thu được Từ đó có thể ứng dụng xây dựng hệ thống nhằm điều khiển cácthiết bị bằng tương tác cử chỉ bàn tay…

Trang 10

CHƯƠNG 3 PHƯƠNG PHÁP PHÂN TÍCH THÀNH

PHẦN CHÍNH P C A

Phương pháp phân tích thành phần chính (P C A) là một phương pháp được sửdụng thường xuyên khi phải đối mặt với những bộ số liệu với số chiều lớn (bigdata) Là phương pháp giảm thiểu chiều dữ liệu mà vẫn không mất đi thôngtin và giữ lại được những thông tin cần thiết cho việc nhận dạng cử chỉ bàn tay

3.1 Phương pháp phân tích thành phần chính (P C A)

3.1.1 Khái niệm P C A

P C A là tên viết tắt của Princispal Comnponents Anaulysis hay còn gọi làphương pháp phân t ích theo thành phần chính, được Karls Pearsson phát minhnăm 1901

Trang 11

P C A là phương pháp đơn giản nhất nhằm phân tích nhiều biến dựa vào vectorđặc trưng, nhằm mục đích khám phá cấu trúc bên trong của dữ liệu Một tập

dữ liệu nhiều biến được xem là tập các tọa độ trong 1 không gian dữ liệu đachiều thì phương pháp P C A lại cung cấp 1 bức ảnh ít chiều hơn

Trong lĩnh vực xử lý ảnh, thông thường cần phải phân tích dữ liệu trước khi xâydựng các mô hình dựa trên cơ sở dữ liệu đó Nhưng đôi khi dữ liệu có số chiềulớn, không thể hình dung trong không gian hai hay ba chiều, vì vậy cần đưa raphương án đưa cơ sở dữ liệu về không gian có số chiều nhỏ hơn

3.1.2 Đặc điểm P C A

P C A là phương pháp có những đặc điểm sau đây:

- Giảm được số chiều của dữ liệu ban đầu

- P C A tạo nên một không gian mới ít chiều hơn không gian cũ, tuy nhiênbiểu diễn dữ liệu tốt như không gian cũ và bảo đảm độ biến thiên của dữliệu của mỗi chiều mới

- P C A tạo ra đặc tính mới dựa trên các đặc tính đã quan sát được và các đặctính có thể biểu diễn tốt dữ liệu lúc đầu

Mục đích của P C A là tạo ra một không gian mới, có số chiều ít hơn sốchiều của không gian cũ Các trục tọa độ trong không gian mới được xây dựngsao cho độ biến thiên dữ liệu của mỗi trục tọa độ là lớn nhất

Trang 12

Hình 3- 1 Ví dụ cho trục tọa độ mới có dữ liệu , với độ biến thiên lớn hơn.Error:

Reference source not found

3.2 Giải thuật P C A

Trang 13

3.2.1 Nhận các ảnh bàn tay từ cơ sở dữ liệu và tập luyện

Bước đầu tiên là đọc cơ sở dữ liệu(CSDL) và nhận vào tất cả ảnh huấn luyện Tất cả ảnh huấn luyện phải đều là ảnh có bàn tay ở tâm ảnh và có chung kích thước

Hình 3- 3 Ảnh huấn luyện có chung kích thước.

Hình 3- 4 Chuyển đổi ảnh có kích thước MxM sang vector M 2 x1.

Tương ứng mỗi một ảnh Ii thì có 1 vector Zi:

Hình 3- 2 Giải thuật P C A

Trang 14

3.2.2 Tính toán giá trị vector trung bình

Giá trị vector trung bình: (2) Hiệu giá trị vector trung bình:

(3)

3.2.3 Tính ma trận hiệp biến

Ma trận hiệp biến C được tính theo công thức:

(4) Với (5)

3.2.4 Tính các “trị riêng” và “vector đặc trưng” của ma trận hiệp biến

Hai ma trận A AT và ATA luôn có cùng “trị riêng” và “vector đặc trưng” thì

có liên hệ với nhau bởi biểu thức mà ma trận ATA lại có số chiều nhỏhơn hẳn ( ma trận N × N) vì vậy sẽ chuyển đổi về ma trận ATA

Sau khi tính toán ta được N vector đặc trưng của A AT( )

tương ứng với N trị riêng

3.2.5 Lựa chọn các thành phần và vector đặc trưng

Nhằm giảm nhiều nhất số chiều và giảm mức độ phức tạp trong việc tính toán, chỉ cần giữ lại K vector đặc trưng (tương ứng với K giá trị riêng lớn nhất)

Lúc đó, ảnh sau khi trừ cho trị trung bình, sẽ được đại diện bằng K vector đặc trưng và được đưa vào không gian đặc trưng:

(6) trong đó:

(7)Thực hiện là quá trình chuẩn hóa vector

Mỗi ảnh bàn tay huấn luyện Φi sẽ được biểu diễn bằng 1 vector:

(8)

Trang 15

3.2.6 Tính giá trị £ j

Tính khoảng cách “Euclides” của ma trận µ, so với không gian mặt

Tính khoảng cách tới từng ảnh trong tập ảnh huấn luyện, và tìm đượckhoảng cách tới ảnh huấn luyện, gần nhất trong không gian mặt Khoảng cáchnày là:

(9) Với N là số ảnh có trong tập ảnh huấn luyện Khi tính được khoảng cáchEuclide, từ đó so sánh ở sai số thấp nhất với database, và suy ra được sốngón tay thể hiện trên ảnh

CHƯƠNG 4 MÔ PHỎNG GIẢI THUẬT PCA CHO NHẬN

DẠNG CỬ CHỈ

Từ những cơ sở lý thuyết về P C A được nên ở chương trên dẫn đến việc xâydựng một chương trình nhận dạng cử chỉ tay trên phần mềm để có được sự nhìnnhận rõ hơn về nhận dạng cử chỉ tay phương pháp P C A

4.1 Mô hình thông số mô phỏng nhận dạng cử chỉ

4.1.1 Các cử chỉ thực hiện nhận dạng trong hệ thống

Trang 16

Trong hệ thống nhận dạng cử chỉ tay bằng phương pháp PCA có 5 cử chỉ đượcnhận dạng bao gồm các cử chỉ thể hiện từ 1 ngón tay đến 5 ngón tay như trên hình.

Hình 4- 1 Cử chỉ được nhận dạng trong hệ thống [5]

4.1.2 Cơ sở dữ liệu

Cơ sở dữ liệu được xây dựng dựa trên tập ảnh luyện (training image) và ảnhthực nghiệm Hình ảnh các ngón tay thể hiện giá trị 1, 2, 3, 4, 5 Mỗi giá trị sẽ có 40ảnh với các thể hiện không giống nhau để tạo được sự đa dạng cho cơ sở dữ liệu

Hình 4- 2 Tập ảnh luyện (Training image).

4.1.3 Mô hình các bước nhận dạng cử chỉ

Mô hình nhận dạng cử chỉ bàn tay được thực hiện theo sơ đồ khối sau và thểhiện chạy giải thuật trên lưu đồ:

Trang 17

Hình 4- 3 Sơ đồ khối ( hệ thống)

1.1.1.6 Acqui Hand Image (Nhập ảnh)

1.1.1.7 Hand Segmentation (Tách biên)

Hình 4- 4 Ảnh chụp cử chỉ tay biểu diễn số 2.

Dễ dàng có thể nhận biết được phần da tay từ mắt người và từ đó ta dễ dàng hiểuđược ảnh muốn truyền đạt là số 2

Nhưng máy tính chưa có khả năng phân biệt như mắt người thấy, vậy nên cầnđến thuật toán tách biên nhằm giúp máy tính hiểu được đâu là phần da tay, từ đó dễdàng điều khiển

Chuyển ảnh từ hệ R G B sang hệ Y cb Cr

Chuyển ảnh từ hệ R G B sang hệ Y Cb Cr theo công thức:

Tách màu da

Trang 18

Công đoạn này được sử dụng để phân loại pixel, theo pixel màu da hoặc khôngphải là pixel màu da Sau khi kết nối tất cả các pixels màu da, và sẽ thu được bàntay sau khi tách màu da.

Otsu Thresthoilding

Sau khi tiến hành tách biên màu da ta sẽ thu được bàn tay, nhưng có thể là một

số điểm ảnh khác trong nền cũng bị dính vào Để xóa các điểm ảnh nền và làm táchbiệt cho đối tượng (ở đây là bàn tay), cần sử dụng phương pháp Otsu Thresholding

Để lấy ngưỡng Otsu, ta sử dụng hàm graythresh:

1.1.1.8 Hand Recognition (Nhận dạng cử chỉ tay)

Một trong các kĩ thuật quan trọng trong việc nhận dạng cử chỉ bàn tay

là so sánh hình ảnh thu được với tập ảnh luyện, từ đó xuất ra được giá trị màhình ảnh thể hiện và xuất ra màn hình

Trang 19

Hình 4- 5 Sơ đồ các bước nhận dạng, trong tập ảnh luyện

Đầu tiên tiến hành đọc ảnh từ tập ảnh luyện vào cơ sở dữ liệu

Khi đọc, ảnh đang ở dạng ảnh màu R G B, có kích thước 640 x 480

Tiếp theo, thực hiện bước tiền xử lý cơ bản (Chuyển ảnh màu R G B sangảnh xám và chuyển ảnh sang vector 1 chiều)

Sau đó tính vector trung bình của tập ảnh luyện:

Tính sai số của từng ảnh so với ma trận trung bình: Các vector sai số sẽ đượcgộp lại thành 1 ma trận A:

Trang 20

Sau khi có được ma trận A và ma trận hiệp biến , tiến hành tính trị riêng

và vector riêng của C thông qua tính trị riêng và vector riêng cua ma trận

Mỗi ảnh tương ứng với một vector trọng số wj cho mỗi hệ số của vector là

hệ số tương ứng 1 vector đặc trưng trong số những vetor đặc trưng mới tìm được

Trang 21

Hình 4- 6 Lưu đồ giải thuật chương trình nhận dạng cử chỉ bàn tay dùng P CA.

Khi đã xử lý các bước cơ bản trong tiền xử lý, bước tiếp theo là trừ đi vectortrung bình :

Trang 22

Kết quả tính được đưa vào một ma trận

Giá trị khoảng cách nhỏ nhất đó được lấy và gán vào biến p

Cuối cùng so sánh khoảng cách này với khoảng cách ngưỡng ( để xem có phải

là ảnh trong tập ảnh luyện hay không)

(Ngưỡng đang được gán nhờ, thực nghiệm tương ứng với tập cơ sở dữ liệu đãxây dựng)

4.2 Mô phỏng

Tất cả chương trình mô phỏng của đề tài “Xây dựng mô hình điều khiển thiết bịdùng cử chỉ bàn tay” được thực hiện trên phần mềm MATLAB R2016a và hoạtđộng trong Laptop Dell core i3 với R A M 4 G B chạy trên hệ điều hànhWindows 10 cùng Webcam 1.5 MP được tích hợp trong Laptop

4.2.1 Kết quả và đánh giá trên tập CSDL

Chương trình mô phỏng nhận dạng cử chỉ tay bằng phương pháp PCA đã có khảnăng nhận dạng được số ngón tay như hình bên dưới

Hình 4- 7 Hình ảnh nhận dạng 1 ngón tay.

Ngày đăng: 22/03/2019, 20:33

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

w