Trong nghiên cứu này, học viên nghiên cứu về ngôn ngữ ký hiệu Việt Nam, phương pháp nhận dạng ngôn ngữ ký hiệu Việt Nam sử dụng găng tay cảm biến, trên cơ sở đó xây dựng phần mềm nhúng t
Trang 1NGUYỄN CÔNG THÀNH
NGHIÊN CỨU HỆ THỐNG NHẬN DẠNG NGÔN NGỮ KÝ HIỆU VIỆT NAM
LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH
THÁI NGUYÊN - 2017
Trang 2VÀ TRUYỀN THÔNG
NGUYỄN CÔNG THÀNH
NGHIÊN CỨU HỆ THỐNG NHẬN DẠNG NGÔN NGỮ KÝ HIỆU VIỆT NAM
Chuyên ngành: Khoa học máy tính
Mã số: 60.48.01.01
Trang 31.1 Khái niệm và vai trò của ngôn ngữ ký hiệu 3
1.2 Đặc điểm ngôn ngữ học của ngôn ngữ ký hiệu 6
1.3 Ngôn ngữ ký hiệu Việt Nam 8
1.4 Các phương pháp nhận biết ngôn ngữ kí hiệu 9
1.4.1 Nhận biết bằng phân tích hình ảnh 9
1.4.2 Nhận biết bằng cảm biến 10
CHƯƠNG 2 GĂNG TAY CẢM BIẾN 12
2.1 Cảm biến cong 12
2.2 Cảm biến gia tốc 18
2.4 Mô hình găng tay cảm biến 32
CHƯƠNG 3 PHƯƠNG PHÁP NHẬN DẠNG NGÔN NGỮ KÍ HIỆU VIỆT NAM DÙNG GĂNG TAY CẢM BIẾN VÀ ỨNG DỤNG 35
3.1 Tập dữ liệu nhận dạng 35
3.2 Thuật toán phân lớp và nhận dạng 37
3.2.1 Chương trình thu thập dữ liệu 37
3.2.2 Xử lý dữ liệu 40
3.2.3 Giới thiệu về WPF 52
3.2.4 Áp dụng WPF mô phỏng bàn tay 53
3.3 Kết quả nhận dạng và đánh giá 54
KẾT LUẬN 57
TÀI LIỆU THAM KHẢO 59
Trang 4Hình 1.1: Ngôn ngữ kí hiệu trong hệ thống Arthrological 5
Hình 1.2 Mô hình hệ thống nhận dạng bàn tay 10
Hình 2.1.Cảm biến độ cong 12
Hình 2.2.Các vị trí của cảm biến độ cong 13
Hình 2.3 Mô hình các cảm biến gắn trên găng tay 13
Hình 2.4 Mạch ghép nối cảm biến cong 14
Hình 2.5 Mạch flash ADC với 4 bộ so sánh 16
Hình 2.6 Analog và digital của hàm sin 17
Hình 2.7 Cảm biến gia tốc ADXL345 18
Hình 2.8 Gia tốc tĩnh theo trục z 19
Hình 2.9 Hệ trục tọa độ trên cảm biến và bàn tay 20
Hình 2.10 Cách xác định các góc Proper Euler 22
Hình 2.11 Hình chiếu trục Z lên hệ trục chuẩn 22
Hình 2.12 Hình chiếu trục Y lên hệ trục chuẩn 23
Hình 2.13 Góc Tait-Bryan (đường cơ sở y’ được kí hiệu màu vàng) 24
Hình 2.14 Ứng dụng Góc Tait- Bryan trong hàng không 25
Hình 2.15 Hiện tượng Gimbal khi Pitch = 90 độ 25
Hình 2.16 Các góc Yaw, Pitch và Roll 26
Hình 2.17 Sự thay đổi tra ̣ng thái ứng với các góc 27
Hình 2.18.Tính toán góc nghiêng từ accelerometer 28
Hình 2.19 Sơ đồ chân Atmega32 29
Hình 2.20 Mô hình hệ thống thu thập dữ liệu 33
Trang 5Hình 3 1.Tư tưởng của thuật toán DTW 41
Hình 3.2 Các đường wraping 42
Hình 3.3 Các yêu cầu với đường wraping 46
Hình 3.4 Các đường wraping có thể 47
Hình 3.5 : Thuật toán nhận dạng ngôn ngữ kí hiệu Việt Nam 49
Hình 3.5 Phân nhóm dữ liệu đầu vào dựa trên Ax 50
Hình 3.6 .NET Framework 3.0 52
Hình 3.7 Mô hình ba chiều của bàn tay 53
Bảng 1: Kết quả nhận dạng ngôn ngữ kí hiệu Việt Nam 56
Trang 6Lớp: CK13
Khoá học: 2014 - 2016
Chuyên ngành: Khoa học máy tính
Mã số chuyên ngành: 60 48 01
Cơ sở đào tạo: Trường Đại học Công nghệ thông tin và Truyền thông Thái Nguyên
Giáo viên hướng dẫn: TS Phùng Trung Nghĩa
Tôi xin cam đoan luận văn “Nghiên cứu hệ thống nhận dạng ngôn ngữ ký hiệu Việt Nam” này là công trình nghiên cứu của riêng tôi dưới sự hướng dẫn
của TS Phùng Trung Nghĩa và sự giúp đỡ của NCS Nguyễn Thị Bích Điệp Các số liệu sử dụng trong luận văn là trung thực Các kết quả nghiên cứu được trình bày trong luận văn chưa từng được công bố tại bất kỳ công trình nào khác
Thái Nguyên, ngày tháng năm 2017
HỌC VIÊN
Nguyễn Công Thành
Trang 7Học viên xin gửi lời cảm ơn chân thành tới TS Phùng Trung Nghĩa, Trường Đại học Công nghệ Thông tin và Truyền thông – Đại học Thái Nguyên, người đã tận tình hướng dẫn giúp học viên hoàn thành luận văn tốt nghiệp
Học viên cũng xin gửi lời cảm ơn sâu sắc đến các thầy cô giáo 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, cùng các thầy cô giáo của Viện Công nghệ thông tin - Viện khoa học Việt Nam đã nhiệt tình giảng dạy, truyền đạt kiến thức cho học viên trong suốt 2 năm học để học viên có thể hoàn thành được luận văn của mình
Nguyễn Công Thành
Trang 8MỞ ĐẦU
Theo số liệu thống kê của WHO năm 2000, trên thế giới có khoảng 250 triệu người khiếm thính, chiếm 4,2 % dân số Do khả năng nghe bị suy giảm nên khả năng giao tiếp bằng lời ở cộng đồng người khiếm thính bị hạn chế rất nhiều Để thay thế cho khả năng giao tiếp bằng tiếng nói, ngôn ngữ ký hiệu, là ngôn ngữ
sử dụng biểu diễn của bàn tay và cơ thể đã ra đời
Trên thế giới, đã có nhiều nghiên cứu phát triển các dịch vụ thông dịch ngôn ngữ ký hiệu và các sản phẩm công nghệ nhằm hỗ trợ người khiếm thính trong giao tiếp xã hội Một số sản phẩm nổi bật như găng tay chuyển đổi ngôn ngữ
ký hiệu thành giọng nói [1], các phần mềm dịch từ văn bản/giọng nói sang ngôn ngữ ký hiệu hay các từ điển tra cứu ngôn ngữ ký hiệu online [2]
Hiện nay theo thống kê, Việt Nam có khoảng trên 2.5 triệu người khiếm thính [3] Với sự quan tâm đặc biệt của Đảng và Nhà nước, đã có nhiều trường học, trung tâm hỗ trợ dạy học và việc làm riêng cho người khiếm thính
Việc phát triển sản phẩm ứng dụng công nghệ để phát huy ngôn ngữ ký hiệu nhằm nâng cao trình độ, tiếp nhận thông tin, khả năng giao tiếp cho người khiếm thính ở Việt Nam rất ít và kém hiệu quả [6] Vì vậy việc đề xuất một giải pháp để xây dựng một hệ thống nhận dạng ngôn ngữ kí hiệu Việt Nam là cần thiết
Trong nghiên cứu này, học viên nghiên cứu về ngôn ngữ ký hiệu Việt Nam, phương pháp nhận dạng ngôn ngữ ký hiệu Việt Nam sử dụng găng tay cảm biến, trên cơ sở đó xây dựng phần mềm nhúng tự động nhận dạng ngôn ngữ ký hiệu Việt Nam tích hợp với găng tay cảm biến
Nội dung chính của luận văn bao gồm 3 chương:
Chương 1 Tổng quan về ngôn ngữ ký hiệu Việt Nam
Chương 2 Găng tay cảm biến
Trang 9Chương 3 Phương pháp nhận dạng ngôn ngữ ký hiệu Việt Nam dùng găng tay cảm biến và ứng dụng
Khi viết báo cáo này học viên đã cố gắng để đạt được những mục tiêu và định hướng nghiên cứu đề ra ban đầu, song điều kiện thời gian và năng lực còn hạn chế nên không tránh khỏi thiếu sót Học viên mong nhận được sự góp ý của thầy giáo hướng dẫn, thầy cô giáo để học viên có được những kinh nghiệm thực tế và bổ ích
để sau này có thể xây dựng được một chương trình hoàn thiện hơn
Trang 10CHƯƠNG 1 TỔNG QUAN VỀ NGÔN NGỮ KÍ HIỆU VIỆT NAM
1.1 Khái niệm và vai trò của ngôn ngữ ký hiệu
Ngôn ngữ ký hiệu (hay ngôn ngữ kí hiệu, thủ ngữ) là ngôn ngữ dùng những biểu hiện của bàn tay thay cho âm thanh của tiếng nói Ngôn ngữ ký hiệu
do người điếc tạo ra nhằm giúp họ có thể giao tiếp với nhau trong cộng đồng của mình và tiếp thu tri thức của xã hội Việc thay thế âm thanh của tiếng nói
có thể liên quan đến đồng thời sự kết hợp các hình dạng tay, hướng và chuyển động của bàn tay, cánh tay hoặc cơ thể, và nét mặt để thể hiện trôi chảy những suy nghĩ của người nói Ngôn ngữ kí hiệu có nhiều điểm tương đồng với ngôn ngữ nói (đôi khi được gọi là "ngôn ngữ bằng miệng" - mà phụ thuộc chủ yếu vào âm thanh), đó là lý do tại sao ngôn ngữ học xem xét cả hai dạng ngôn ngữ là ngôn ngữ tự nhiên Tuy nhiên cũng có một số khác biệt đáng kể giữa các ngôn ngữ ký hiệu và ngôn ngữ nói Đặc biệt không nên nhầm lẫn ngôn ngữ kí hiệu với ngôn ngữ cơ thể, là một loại giao tiếp phi ngôn ngữ
Bất cứ đâu trong cộng đồng người khiếm thính trên thế giới, ngôn ngữ
ký hiệu đều được phát triển Ngôn ngữ kí hiệu không chỉ được sử dụng bởi người điếc mà nó cũng được sử dụng bởi những người có thể nghe thấy, nhưng thể chất bị hạn chế để có thể nói chuyện bình thường Ngôn ngữ kí hiệu có những thuộc tính ngôn ngữ riêng biệt Hiện nay, hàng trăm ngôn ngữ ký hiệu được sử dụng trên thế giới và phát triển trong cộng đồng người khiếm thính ở tất cả các quốc gia Một số ngôn ngữ ký hiệu có được công nhận pháp lý, trong khi một số khác thì chỉ mang tính cục bộ, địa phương
Một quan niệm sai lầm phổ biến là tất cả các ngôn ngữ ký hiệu là trên toàn thế giới là hoàn toàn giống nhau hoặc ngôn ngữ ký hiệu là một ngôn ngữ quốc tế Thực tế thì không phải vậy, mỗi quốc gia có hơn ngôn ngữ ký hiệu bản
Trang 11địa riêng của mình, và thậm chí một quốc gia có nhiều hơn một loại ngôn ngữ
kí hiệu mang tính chất đặc trưng của từng địa phương trong quốc gia đó Mặc
dù, có thể nhận thấy ngôn ngữ ký hiệu có thể chia sẻ với nhau với nhau, cho dù trong cùng một nước hoặc mở rộng phạm vi bên ngoài một quốc gia
Từ những năm 384-322 TCN Aristotle, triết gia vĩ đại của Hy Lạp, tuyên bố rằng: "Người điếc không thể giáo dục được Nếu không nghe được, con người không thể học được" Tuyên bố này đặt nền móng cho việc xây dựng một ngôn ngữ riêng cho người điếc
Một trong những ghi chép sớm nhất về ngôn ngữ ký hiệu là từ thế kỷ thứ
V trước Công nguyên, trong Plato 's Cratylus , Socrates nói: “ If we hadn't a voice or a tongue, and wanted to express things to one another, wouldn't we try
to make signs by moving our hands, head, and the rest of our body, just as dumb people do at present? (Tạm dịch: “ Nếu chúng ta không có một giọng nói hay một cái lưỡi, và muốn thể hiện mọi điều với nhau, chúng ta sẽ phải cố gắng để tạo ra dấu hiệu bằng cách di chuyển bàn tay, đầu, và một phần cơ thể như cách người câm họ làm có phải không? " [4]
Cho đến thế kỷ 19, hầu hết những gì chúng ta biết về lịch sử ngôn ngữ
ký hiệu chỉ giới hạn trong bảng chữ cái bằng tay (hệ thống fingerspelling) đã được phát minh ra để tạo điều kiện chuyển giao từ một ngôn ngữ nói đến một ngôn ngữ ký hiệu, chứ không phải là một loại ngôn ngữ riêng
Trong năm 1620, Juan Pablo Bonet xuất bản một cuốn sách nói về rút gọn chữ và nghệ thuật giảng dạy cho người câm ở Madrid [5] Nó được coi là luận thuyết hiện đại đầu tiên của dấu hiệu ngữ âm học ngôn ngữ, đặt ra một phương pháp giáo dục bằng miệng cho người khiếm thính và một bảng chữ cái của ngôn ngữ kí hiệu
Trang 12Tại Anh, bảng chữ cái bằng tay cũng đã được sử dụng cho một số mục đích, chẳng hạn như thông tin liên lạc bí mật, [6] nói trước công chúng, hay giao tiếp của người khiếm thính [7] Năm 1648, John Bulwer mô tả "Master Babington", một người đàn ông bị điếc thành thạo trong việc sử dụng một bảng chữ cái, người vợ có thể trò chuyện với anh ta một cách dễ dàng, ngay cả trong bóng tối thông qua việc sử dụng các ký hiệu xúc giác [8]
Năm 1680, George Dalgarno bố một nghiên cứu [9] , trong đó ông đã trình bày phương pháp riêng của mình về giáo dục người khiếm thính, trong đó
có một bảng chữ cái "arthrological", bằng cách chỉ vào các khớp khác nhau của các ngón tay và lòng bàn tay của bàn tay trái Hệ thống Arthrological đã được
sử dụng một thời gian
Hình 1.1: Ngôn ngữ kí hiệu trong hệ thống Arthrological
Ngôn ngữ kí hiệu thường có khá ít mối liên hệ với ngôn ngữ cho tiếng nói của các vùng mà ngôn ngữ đó phát sinh sinh Mối tương quan giữa ký hiệu và ngôn ngữ nói là phức tạp và khác nhau tùy thuộc vào quốc gia hơn là phụ thuộc chỉ vàocác ngôn ngữ nói Ví dụ, Mỹ, Canada, Anh, Úc và New Zealand đều có tiếng Anh là ngôn ngữ chính của họ, nhưng ngôn ngữ American Sign (ASL), được sử dụng ở Mỹ và hầu hết các bộ phận của Canada, có nguồn gốc từ Ngôn ngữ ký hiệu của Pháp trong khi nó khác biệt với phương ngữ trong ngôn ngữ
kí hiệu của Anh, Úc và New Zealand [17] Tương tự như vậy, các ngôn ngữ kí hiệu của Tây Ban Nha và Mexico là rất khác nhau, mặc dù Tây Ban Nha là
Trang 13Bolivia dựa trên ASL hơn bất kỳ ngôn ngữ ký hiệu được sử dụng trong một quốc gia Tây Ban Nha [19] Biến thể cũng phát sinh trong một ngôn ngữ ký hiệu 'quốc gia' mà không nhất thiết phải tương ứng với sự khác biệt phương ngữ trong ngôn ngữ nói quốc gia; đúng hơn, chúng thường có thể tương quan đến
vị trí địa lý của cộng đồng người điếc [20] [21]
1.2 Đặc điểm ngôn ngữ học của ngôn ngữ ký hiệu
Cũng như ngôn ngữ nói, ngôn ngữ ký hiệu của từng quốc gia, thậm chí
là từng khu vực trong một quốc gia rất khác nhau Điều đó là do mỗi quốc gia, khu vực có lịch sử, văn hóa, tập quán khác nhau nên ký hiệu để biểu thị sự vật hiện tượng cũng khác nhau Chẳng hạn, cùng chỉ tính từ màu hồng thì ở Hà Nội người ta xoa vào má (má hồng), còn tại Thành phố Hồ Chí Minh lại chỉ vào môi (môi hồng) Điều tương tự cũng diễn ra khi có sự khác biệt lớn hơn trên tầm quốc gia, dẫn tới sự khác biệt của hệ thống từ vựng và ngữ pháp ngôn ngữ
ký hiệu giữa các nước
Tuy nhiên, ký hiệu tất cả mọi nơi trên thế giới đều có những điểm tương đồng nhất định Ví dụ: ký hiệu ‘uống nước’ thì nước nào cũng làm như nhau là giả
bộ cầm cốc uống nước, ký hiệu ‘lái ô tô’ thì giả bộ cầm vô lăng ô tô quay quay, v.v Mỗi người (dù bình thường hay câm điếc) đều có sẵn 30% kiến thức ngôn ngữ ký hiệu Do ngôn ngữ ký hiệu phát triển hơn trong cộng đồng người khiếm thính, nên những người thuộc cộng đồng này của hai nước khác nhau có thể giao tiếp với nhau tốt hơn hai người bình thường nhưng mà không biết ngoại ngữ
Hai đặc điểm quan trọng nhất của NGÔN NGỮ KÍ HIỆU là tính giản lược và có điểm nhấn, VD: Tiếng Anh: “Today it is not so much beautiful as the sky clouds make gloomy” NGÔN NGỮ KÍ HIỆU: "It is NOT BEAUTIFUL, sky CLOUDS make GLOOMY "
Trang 14Do tính giản lược và có điểm nhấn nên cấu trúc ngữ pháp ngôn ngữ ký hiệu nhiều khi không thống nhất, cùng một câu có thể sắp xếp nhiều cách khác nhau (thường thì điểm nhấn được đưa lên đầu câu để gây hiệu quả chú ý)
Một quan niệm sai lầm phổ biến là ngôn ngữ ký hiệu phụ thuộc vào ngôn ngữ nói Ngôn ngữ kí hiệu, giống như tất cả các ngôn ngữ tự nhiên, được phát triển bởi những người sử dụng chúng, trong trường hợp này, những người khiếm thính, những người có thể có ít hoặc không có kiến thức của bất kỳ ngôn ngữ nói nào
Khi phát triển ngôn ngữ kí hiệu, đôi khi phải vay mượn các yếu tố từ ngôn ngữ nói, cũng giống như tất cả các ngôn ngữ vay mượn từ các ngôn ngữ khác Trong nhiều ngôn ngữ kí hiệu, một bảng chữ cái (fingerspelling) có thể được sử dụng trong giao tiếp bằng cách vay một từ từ một ngôn ngữ nói, bằng cách quy định các chữ cái Điều này thường được sử dụng cho tên riêng của người và nơi chốn; nó cũng được sử dụng trong một số ngôn ngữ cho các khái niệm mà không có kí hiệu có sẵn tại thời điểm đó Fingerspelling đôi khi có thể
là một nguồn gốc của những kí hiệu mới, chẳng hạn như kí hiệu khởi tạo
Nhìn chung, mặc dù, ký ngôn ngữ độc lập với ngôn ngữ nói và phát triển theo con đường riêng Ví dụ, Ngôn ngữ ký hiệu Anh và Ngôn ngữ ký hiệu Mỹ (ASL) là khá khác nhau và đôi bên cùng khó hiểu, mặc dù những người nghe của Anh và Mỹ có cùng ngôn ngữ nói Các văn phạm của ngôn ngữ kí hiệu thường không giống ngôn ngữ nói được sử dụng trong các khu vực địa lý tương tự; trên thực tế, về mặt cú pháp, ASL có mối quan hệ với tiếng Nhật nhiều hơn
là với tiếng Anh
Tương tự như vậy, các nước có sử dụng một ngôn ngữ nói duy nhất có thể
có hai hoặc nhiều ngôn ngữ kí hiệu, hoặc một khu vực chứa nhiều hơn một ngôn ngữ nói có thể chỉ sử dụng một ngôn ngữ ký hiệu Ở Nam Phi , có 11 ngôn ngữ
Trang 15nói chính thức và một số lượng tương tự khác sử dụng rộng rãi ngôn ngữ nói Tuy nhiên nó chỉ có một ngôn ngữ ký hiệu với hai biến thể do lịch sử của việc
có hai tổ chức giáo dục lớn dành cho người điếc ở các khu vực địa lý khác nhau
1.3 Ngôn ngữ ký hiệu Việt Nam
Việt Nam có khoảng 2,5 triệu người khiếm thính (Theo số liệu của cuộc tổng điều tra dân số và nhà ở VN tháng 12/2009) bao gồm người Điếc, người nghe kém và người mới bị mất thính lực Do khả năng nghe bị suy giảm nên khả năng giao tiếp bằng lời nói tự nhiên của người khiếm thính rất hạn chế Vì vậy, để đáp ứng nhu cầu giao tiếp, người khiếm thính phải sử dụng một thứ ngôn ngữ đặc biệt: Ngôn ngữ kí hiệu
Ngôn ngữ kí hiệu là ngôn ngữ chủ yếu được cộng đồng người khiếm thính
sử dụng nhằm chuyển tải thông tin qua cử chỉ, điệu bộ, nét mặt thay cho lời nói Hiện nay, ở Việt Nam, cả ba thuật ngữ ngôn ngữ kí hiệu, ngôn ngữ kí hiệu hay thủ ngữ đều đang được sử dụng để chỉ hệ thống cử chỉ, nét mặt mà người khiếm thính dùng để giao tiếp Tuy nhiên, hai thuật ngữ Thủ ngữ và Ngôn ngữ kí hiệu là không thực sự chính xác vì thủ ngữ theo tiếng Hán có nghĩa là “ngôn ngữ của đôi tay, ngôn ngữ bằng tay” Tuy nhiên tất cả các ngôn ngữ kí hiệu trên thế giới đều có 5 phương tiện và cách thức biểu hiện sau:
- Vị trí của bàn tay
- Hình dạng bàn tay
- Hướng của lòng bàn tay
- Hướng của chuyển động lòng bàn tay
- Biểu hiện của nét mặt
Những điểm khác biệt trong ngữ pháp cấu tạo từ của ngôn ngữ kí hiệu
và tiếng Việt chứng tỏ ngôn ngữ kí hiệu Việt Nam là một ngôn ngữ đích thực,
Trang 16có ngữ pháp riêng biệt, độc lập với tiếng Việt Nó hoàn toàn đáp ứng được vai trò là một hệ thống các tín hiệu đáp ứng được nhu cầu giao tiếp và là công cụ
tư duy của người khiếm thính Sử dụng ngôn ngữ kí hiệu, người dạy có thể truyền đạt một cách hữu hiệu nội dung kiến thức đến cho những học trò khiếm thính hiệu chính là ngôn ngữ mẹ đẻ, ngôn ngữ thứ nhất của người khiếm thính
1.4 Các phương pháp nhận biết ngôn ngữ kí hiệu
Để xây dựng được một hệ thống nhận biết ngôn ngữ kí hiệu có khá nhiều phương pháp, sau đây chỉ giới thiệu về hai phương pháp nhận biết phổ biến được nghiên cứu trên thế giới: Nhận biết bằng phân tích hình ảnh và nhận biết bằng hệ cảm biến
1.4.1 Nhận biết bằng phân tích hình ảnh
Xử lý ảnh là một ngành khoa học có rất nhiều ứng dụng trong thực tế, như chơi game, điều khiển tự động hoặc mô phỏng chuyển động và nó cũng đã được áp dụng trong nghiên cứu về ngôn ngữ kí hiệu Nhận biết ngôn ngữ kí hiệu qua qua ảnh (hoặc camera hay video) đã được nghiên cứu và phát triển từ lâu Các ứng dụng dựa trên xử lý ảnh thu được các kết quả tốt và ngày càng phát triển mạnh mẽ
Để nhận dạng ngôn ngữ kí hiệu bằng phân tích hình ảnh, việc đầu tiên cần thiết phải làm là tìm những vùng có thông tin bên trong hình ảnh Camera
sẽ theo dõi sự di chuyển của bàn tay những người khiếm thính và sẽ lọc ra chuỗi hình ảnh phù hợp Ngôn ngữ kí hiệu được nhận biết dựa trên hình ảnh và sự di chuyển của tay trích xuất từ các hình ảnh trên
Khả năng nhận biết của ngôn ngữ kí hiệu theo phương pháp này là phụ thuộc nhiều vào khoảng cách, tuỳ thuộc vào độ xa gần mà cho ta sự nhận biết
có thể là chính xác hay không chính xác Ngoài ra chất lượng hình ảnh cũng
Trang 17ảnh hưởng nhiều đến kết quả, nhưng với sự phát triển mạnh mẽ của các thiết bị máy ảnh hay camera nâng cao rất nhiều chất lượng theo phương pháp này
1.4.2 Nhận biết bằng cảm biến
Khác với phương pháp sử dụng hình ảnh, phương pháp này thu thập dữ liệu từ bàn tay thông qua một hệ thống các cảm biển gắn trực tiếp trên bàn tay rồi truyền dữ liệu về PC để xử lý
Hình 1.1 Mô hình hệ thống nhận dạng bàn tay
Hệ nhận biết bằng cảm biến bao gồm các thành phần:
Một máy tính xử lý dữ liệu
Một hệ vi điều khiển thu thập dữ liệu
Hệ thống loa (hoặc màn hình hiển thị)
Hệ thống cảm biến
Tay người có 17 điểm tích cực: 3 điểm trên mỗi ngón trỏ, ngón giữa, ngón áp út, ngón út, ngón cái và trên cổ tay Chúng ta không cần lấy thông tin
về tất cả các điểm để có thể nhận dạng bàn tay, mà chỉ cần các điểm quan trọng
mà từ đó có thể mô phỏng lại được tư thế bàn tay khác nhau và gắn cảm biến vào các điểm đó để thu thập các thông số
Trang 18Thông số thu về từ hệ cảm biến sẽ thay đổi tùy theo các biến đổi trên bàn tay, sau đó truyền các thông số thu được cho vi điều khiển, vi điều khiển sẽ chuyển dữ liệu thành các chuẩn được quy định trước và truyền dữ liệu cho máy tính xử lý, kết quả sẽ được đưa ra loa hoặc hiển thị dạng văn bản trên màn hình
Do không thể truyền trực tiếp dữ liệu từ hệ cảm biến về máy tính nên cần
hệ thống vi điều khiển làm trung gian kết nối với máy tính, tuy nhiên với sự phát triển của hệ thống nhúng hiện nay, hệ vi điều khiển có thể rất mạnh mẽ thay thế được cho các máy tính với cấu hình cao (tương tự như các smartphone) nên có thể không cần máy tính để xử lý dữ liệu, chúng có thể trực tiếp xử lý dữ liệu và xuất ra các thiết bị nghe nhìn bằng các chuẩn có sẵn
Trong phạm vi của luận văn này, học viên áp dụng phương pháp thứ hai, ngoài các thuận lợi của phương pháp này, hệ thống có khả năng áp dụng sang các lĩnh vực khác như điều khiển tự động, giao tiếp người-máy, thực tại ảo,
Trang 19CHƯƠNG 2 GĂNG TAY CẢM BIẾN
Như đã trình bày ở chương 1, học viên xây dựng hệ thống nhận dạng theo phương pháp sử dụng hệ thống cảm biến thu thập dữ liệu Hệ thống bao gồm 2 phần, phần thứ nhất là thiết bị găng tay gồm hệ các cảm biến gắn trên một găng tay để cố định vị trí các cảm biến và phần hệ vi điều khiển để thu thập và truyền tải dữ liệu Trong chương này học viên trình bày về cấu tạo và cách hoạt động của găng tay cảm biến Hệ thống hoạt động dựa trên việc thu thập dữ liệu từ hệ thống các cảm biến gắn trên bàn tay thực Để mô phỏng lại bàn tay học viên sử dụng 2 loại cảm biến: cảm biến độ cong gắn trên các ngón tay và cảm biến gia tốc gắn trên lưng của bàn tay Phần hệ vi điều khiển học viên sử dụng KIT dựa trên Chip ATmega324U thuộc họ AVR
2.1 Cảm biến cong
Hình 2.1.Cảm biến độ cong
Để xác định độ cong của các ngón tay, học viên sử dụng cảm biến độ uốn cong gắn dọc theo trục của các ngón tay Cảm biến độ cong là một thanh điện trở dài mà điện trở sẽ thay đổi theo độ uốn cong của thanh, thanh càng cong lớn thì sẽ có điện trở càng lớn Cảm biến được gắn cố định theo các khớp chuyển động trong các thiết bị để tính toán, được sử dụng trong các ứng dụng robot, xây dựng đơn giản hay các thiết bị y tế, vật lý trị liệu
Trang 20Cảm biến học viên sử dụng trong thiết bị là loại dài 2,2 inch, độ dài phù hợp để gắn trên ngón tay bao phủ một khớp, một ngón tay gắn 2 cảm biến
Thẳng
Bẻ cong 45 o
Bẻ cong 90 o
Hình 2.2.Các vị trí của cảm biến độ cong
Ở trạng thái thẳng điện trở của thanh là 25kΩ (có thể có sai số), khi uốn cong tối đa điện trở thanh sẽ tăng lên đến 45kΩ
Hình 2.3 Mô hình các cảm biến gắn trên găng tay
Cách sử dụng cảm biến cong: Cảm biến cong được gắn trên các ngón
tay , mỗi ngón tay 2 cảm biến gắn trên 2 khớp tích cực, khớp đầu ngón tay không có khả năng chuyển động tự do và cũng không quá ảnh hưởng đến quá trình nhận dạng nên bỏ qua Riêng ngón cái chỉ 2 cảm biến cong là không đủ,
Trang 21do ngón cái có khả năng xoay tự do, học viên gắn thêm một cảm biến gia tốc
để xác định góc của ngón cái
Hình 2.4 Mạch ghép nối cảm biến cong
Mắc cảm biến vào mạch điện theo sơ đồ như trên, với Vin được cấp cố định, ta sẽ có Vout biến đổi theo công thức như sau:
Vout = Vin ( 𝑅1
𝑅1+𝑅2)
Ta cần chọn R2 thích hợp sao cho khoảng biến thiên của R1 gây ra thay đổi đủ lớn trên Vout và giá trị này sẽ được vi điều khiển đọc và đưa về máy tính
xử lý Với giá trị R1 của flex, học viên chọn giá trị R2 là xấp xỉ 40kΩ
Dữ liệu đọc được từ ADC là các dữ liệu tương tự (analog) Trong khi đó,
vi điều khiển là một thiết bị số (digital), các giá trị mà một vi điều khiển có thể thao tác là các con số rời rạc vì thực chất chúng được tạo thành từ sự kết hợp của hai mức 0 và 1 Ví dụ chúng ta muốn dùng một thanh ghi 8 bit trong vi điều khiển để lưu lại các giá trị nhiệt độ từ 0oC đến 255oC, như chúng ta đã biết, một thanh ghi 8 bit có thể chứa tối đa 256 (28) giá trị nguyên từ 0 đến 255, như thế các mức nhiệt độ không nguyên như 28.123 oC sẽ không được ghi lại Quá trình
này thường được thực hiện bởi một thiết bị gọi là bộ chuyển đổi tương tự - số
ADC (Analog to Digital Converter)
Trang 22Có rất nhiều phương pháp chuyển đổi ADC, học viên sẽ trình bày một cách chuyển đổi rất cơ bản và phổ biến, phương pháp chuyển đổi mà học viên nói là phương pháp chuyển đổi trực tiếp (direct converting) hoặc flash ADC Các bộ chuyển đổi ADC theo phương pháp này được cấu thành từ một dãy các bộ so sánh (như opamp), các bộ so sánh được mắc song song và được kết nối trực tiếp với tín hiệu analog cần chuyển đổi Một điện áp tham chiếu (reference) và một mạch chia áp được sử dụng để tạo ra các mức điện áp so sánh khác nhau cho mỗi bộ so sánh Hình 2.5 mô tả một bộ chuyển đổi flash ADC có 4 bộ so sánh, Vin là tín hiệu analog cần chuyển đổi và giá trị sau chuyển đổi là các con số tạo thành từ sự kết hợp các mức nhị phân trên các chân Vo Trong hình 2.5, bạn thấy rằng do ảnh hưởng của mạch chia áp (các điện trở mắc nối tiếp từ điện áp +15V đến ground), điện áp trên chân âm (chân -) của các bộ
so sánh sẽ khác nhau Trong lúc chuyển đổi, giả sử điện áp Vin lớn hơn điện áp
“V-” của bộ so sánh 1 (opamp ở phía thấp nhất trong mạch) nhưng lại nhỏ hơn điện áp V- của các bộ so sánh khác, khi đó ngõ Vo1 ở mức 1 và các ngõ Vo khác ở mức 0, chúng ta thu được một kết quả số Một cách tương tự, nếu tăng điện áp Vin ta thu được các tổ hợp số khác nhau Với mạch điện có 4 bộ so sánh như trong hình 1, sẽ có tất cả 5 trường hợp có thể xảy ra, hay nói theo cách khác điện áp analog Vin được chia thành 5 mức số khác nhau Tuy nhiên, bạn chú ý
là các ngõ Vo không phải là các bit của tín hiệu số ngõ ra, chúng chỉ là đại diện
để tổ hợp thành tín hiệu số ngõ ra, dễ hiểu hơn chúng ta không sử dụng được các bit Vo trực tiếp mà cần một bộ giải mã (decoder) Trong bảng 1 học viên trình bày kết quả sau khi giải mã ứng với các tổ hợp của các ngõ Vo
Trang 23Hình 2.5 Mạch flash ADC với 4 bộ so sánh
Độ phân giải (resolution): như trong ví dụ trên, nếu mạch điện có 4 bộ
so sánh, ngõ ra digital sẽ có 5 mức giá trị Tương tự nếu mạch điện có 7 bộ so sánh thì sẽ có 8 mức giá trị có thể ở ngõ ra digital, khoảng cách giữa các mức tín hiệu trong trường hợp 8 mức sẽ nhỏ hơn trường hợp 4 mức Nói cách khác, mạch chuyển đổi với 7 bộ so sánh có giá trị digital ngõ ra “mịn” hơn khi chỉ có
4 bộ, độ “mịn” càng cao tức độ phân giải càng lớn Trong trường hợp có 8 mức giá trị ngõ ra, chúng ta cần 3 bit nhị phân để mã hóa hết các giá trị này, vì thế mạch chuyển đổi ADC với 7 bộ so sánh sẽ có độ phân giải là 3 bit Một cách tổng quát, nếu một mạch chuyển đổi ADC có độ phân giải n bit thì sẽ có 2n mức giá trị có thể có ở ngõ ra digital Để tạo ra một mạch chuyển đổi flash ADC có
độ phân giải n bit, chúng ta cần đến 2n-1 bộ so sánh, giá trị này rất lớn khi thiết
kế bộ chuyển đổi ADC có độ phân giải cao Độ phân giải liên quan mật thiết
Trang 24đến chất lượng chuyển đổi ADC, việc lựa chọn độ phân giải phải phù hợp với
độ chính xác yêu cầu và khả năng xử lý của bô điều khiển
Hình 2.6 Analog và digital của hàm sin
Điện áp tham chiếu (reference voltage): Cùng một bộ chuyển đổi ADC nhưng có người muốn dùng cho các mức điện áp khác nhau, ví dụ người A muốn chuyển đổi điện áp trong khoảng 0-1V trong khi người B muốn dùng cho điện áp từ 0V đến 5V Rõ ràng nếu hai người này dùng 2 bộ chuyển đổi ADC đều có khả năng chuyển đổi đến điện áp 5V thì người A không sử dụng hết khả năng của thiết bị Vấn đề sẽ được giải quyết bằng một đại lượng gọi là điện áp tham chiếu - Vref (reference voltage) Điện áp tham chiếu thường là giá trị điện
áp lớn nhất mà bộ ADC có thể chuyển đổi Trong các bộ ADC, Vref thường là thông số được đặt bởi người dùng, nó là điện áp lớn nhất mà thiết bị có thể chuyển đổi Ví dụ, một bộ ADC 10 bit có Vref=3V, nếu điện áp ở ngõ vào là 1V thì giá trị số thu được sau khi chuyển đổi sẽ là: 1023x(1/3)=314 Trong đó
1023 là giá trị lớn nhất mà một bộ ADC 10 bit có thể tạo ra (1023=210-1) Vì điện áp tham chiếu ảnh hưởng đến độ chính xác của quá trình chuyển đổi, chúng ta cần tính toán để chọn 1 điện áp tham chiếu phù hợp, không được nhỏ hơn giá trị lớn nhất của input nhưng cũng đừng quá lớn
Chuyển đổi ADC trên AVR: Chip AVR Atmega32U4 của Atmel có
tích hợp sẵn các bộ chuyển đổi ADC với độ phân giải 10 bit Có tất cả 12 kênh
Trang 25đơn (các chân ADC0 đến ADC11), 16 tổ hợp chuyển đổi dạng so sánh, trong
đó có 2 kênh so sánh có thể khuyếch đại Bộ chuyển đổi ADC trên AVR không hoạt động theo nguyên lý flash ADC mà học viên đề cập ở phần trên, ADC trong AVR là loại chuyển đổi xấp xỉ lần lượt (successive approximation ADC)
ADC trên AVR cần được duy trì bằng nguồn điện áp riêng ở chân AVCC, giá trị điện áp cấp cho AVCC không được khác nguồn nuôi chip (VCC) quá +/-0.3V Nhiễu (noise) là vấn đề rất quan trọng khi sử dụng các bộ ADC,
để giảm thiểu sai số chuyển đổi do nhiễu, nguồn cấp cho ADC cần phải được lọc kỹ càng
2.2 Cảm biến gia tốc
Cảm biến gia tốc dùng để xác định hướng của bàn tay Trong luận văn học viên sử dụng 2 cảm biến gia tốc, một gắn trên lưng bàn tay để xác định hướng cho cả bàn tay và một trên ngón tay cái để xác định góc cho riêng ngón tay cái
Hình 2.7 Cảm biến gia tốc ADXL345
Ứng dụng phổ biến:
Trang 26 Cell Phone/PMP/PDA: Image Stability, Text Scroll, Motion Dialing, E;Compass, Tap to Mute
HDD: phát hiện trạng thái rơi tự do (Freefall Detection)
Laptop PC: phát hiện rơi hay bị lấy cắp (Freefall Detection, Anti Theft)
Bổ chính độ nghiêng cho la bàn điện tử (E Compass Tilt Compensation)
3D Gaming: Cảm biến đo độ nghiêng và chuyển động (Tilt and Motion Sensing), Ghi sự kiện (Event Recorder)
Cảm biến gia tốc sẽ đo hình chiếu của gia tốc trọng trường lên 3 trục của cảm biến Ta biết, gia tốc trọng trường g luôn không đổi Khi cảm biến accelerometer thực hiện chuyển động quay, hệ trục xyz gắn liền với nó cũng quay theo, với mỗi vị trí khác nhau của accelerometer trong không gian, hình chiếu của gia tốc trọng trường g lên hệ trục xyz đó sẽ cho ra những giá trị khác nhau phụ thuộc vào góc hợp bởi phương ngang và phương của mỗi trục
Hình 2.8 Gia tốc tĩnh theo trục z
Tilt chính là góc nghiêng của mỗi trục x,y,z so với mặt phẳng ngang Ta gọi trục nằm ngang là (∆), với chiều dương của góc nghiêng (tilt) θ là chiều
Trang 27Ta có:
gx = g*sin 𝜃𝑥
gy = g*sin 𝜃𝑦
gz = g*sin 𝜃𝑧
Hình 2.9 Hệ trục tọa độ trên cảm biến và bàn tay
Ngõ ra của các loại accelerometer là tuyến tính, kể cả dạng analog hay digital, với ADXL345 độ nhạy ±16g, dữ liệu dạng 10bit, hoặc có thể cài đặt lên 13bit
Khi làm việc, dưới tác động của môi trường và do sự lão hoá của cảm biến,
độ nhạy sẽ là một giá trị khác với giá trị danh định này Khi sử dụng cảm biến, ta đồng thời cũng cần xác định lại độ nhạy của nó trước khi sử dụng
Để hiểu cách thức đo góc nghiêng dựa trên hoạt động của cảm biến gia tốc, chúng ta cần nghiên cứu về lý thuyết 3 chiều
Trang 28*) Lý thuyết góc 3 chiều
a) Phương pháp Go ́ c Euler
Các góc Euler là 3 góc được định nghĩa bởi Leonhard Euler để xác đi ̣nh hướng của mô ̣t đối tượng Để xác định hướng trong không gian Euclide 3 chiều,
3 tham số được đòi hỏi Chúng có thể được cho ̣n theo nhiều cách khác nhau, và
các góc Euler là mô ̣t trong số đó
Các góc Euler thay thế cho ba chuyển động quay kết hợp, di chuyển hê ̣ trục tham chiếu đến một hệ tru ̣c ta đang xét Hay nói mô ̣t cách khác, bất kì mô ̣t hướng nào trong không gian Euclide 3 chiều cũng có thể được xác đi ̣nh bằng
sự kết hợp của 3 chuyển đô ̣ng xoay thành phần (chuyển đô ̣ng xoay quanh một trục cơ bản), và tương tự như thế, ma trâ ̣n xoay từ hê ̣ tru ̣c cố đi ̣nh tham chiếu đến hê ̣ tru ̣c ta đang xét cũng có thể được phân tích thành 3 ma trâ ̣n xoay thành phần
Không tính đến viê ̣c xét dấu của chuyển động quay cũng như viê ̣c di chuyển các hệ tru ̣c tham chiếu, có tất cả 12 quy ước khác nhau trong viê ̣c kết
hợp chuyển đô ̣ng quay, từ đó có các quy ước về góc khác nhau
Việc xác định các góc là thuô ̣c nhóm nào phu ̣ thuô ̣c vào cách đi ̣nh nghĩa đường cơ sở dùng để hỗ trợ viê ̣c xác định các góc này Có thể sử du ̣ng đường
cơ sở là giao của 2 mặt phẳng tương đồng (2 mă ̣t phẳng trùng nhau khi các góc bằng 0), tuy nhiên cũng có thể xác đi ̣nh dựa vào 2 mă ̣t phẳng trực giao (2 mặt phẳng vuông góc nhau khi các góc bằ ng 0) Các góc đươ ̣c xác đi ̣nh bằng cách chọn thứ nhất được gọi là các góc Euler chính xác Còn với cách cho ̣n thứ hai,
các góc đươ ̣c go ̣i là góc Nautical, góc Cardan, hoă ̣c là góc Tait-Bryan
Trang 29b) Góc Euler chính xác (proper Euler angles)
Đường cơ sở là giao của 2 mặt phẳng XY và xy Trong trường hợp này góc Euler tuân theo quy luật zyz, nghĩa là ta xoay hệ trục tọa độ tuyệt đối theo các trục tương ứng z sẽ được góc α, tiếp tục quay theo trục x sẽ được góc β, và tiếp tục quay theo trục z sẽ được góc γ
Hình 2.10 Cách xác định ca ́ c góc Proper Euler
Trục cố định được kí hiệu bởi màu lam, trục xoay được là màu đỏ Góc α là góc giữa trục x( cố định) và đường cơ sở ( kí hiệu N) Góc β là góc giữa trục z ( cố định) và trục Z( trục xoay)
Góc γ là góc giữa đường cơ sơ ( N ) và trục X( trục xoay)
Lưu ý rằng, các góc α và γ có modulo là 2π, dải giá tri ̣ năm trong khoảng [-π,π] Riêng gó c β có modulo là π , dải giá tri ̣ nằm trong khoảng [0, π] hoă ̣c là [-π/2, π/2]
Hình 2.11 Hình chiếu trục Z lên hệ trục chuẩn
Trang 30Cách xác định góc Euler từ một hệ trục bất kì:
cos(β) = Z3
2 3sin( ) 1Z
Y Z
Hình 2.12 Hình chiếu trục Y lên hệ trục chuẩn
Cuối cùng, sử dụng hàm chuyển đổi ngươ ̣c ta sẽ có đươ ̣c các góc Euler:
Trang 31c, Góc Tait–Bryan
Đường cơ sở là giao giữa 2 mặt phằng xy và YZ Trường hợp này góc Euler tuân theo quy luật zyx, nghĩa là khi quay hệ trục tọa độ tuyệt đối theo trục ta được góc Ψ, tiếp tục quay theo trục y ta được góc φ và tiếp tục quay
theo trục x ta được góc θ
Hình 2.13 Góc Tait-Bryan (đường cơ sở y’ được kí hiệu màu vàng)
Có thể xác định góc Tait-Bryan như sau:
Góc φ là góc giữa đường cơ sở và trục X
Góc θ là góc giữa đương cơ sở và trục và trục Y
Góc Ψ alf góc giữa trị y và đường cơ sở
Trong thực tế người ta thường ứng dụng Góc Tait- Bryan xác định thuộc tính và định hướng của hệ thống INS, ví dụ cụ thể là xác định vị trí và phương hướng của máy bay, đôi khi được gọi là hệ trục tọa độ hàng không (aircraft convention)
Trang 32Hình 2.14 Ứng dụng Góc Tait- Bryan trong hàng không
Roll là góc quay quanh trục x (trục dọc thân máy bay)
Pitch là góc quay quanh trục y (trục dọc cánh máy bay)
Heading (Yaw) là góc quay quanh trục z (trục song song với trọng lực)
d) Vấn đề Gimbal Lock
Hình 2.15 Hiện tượng Gimbal khi Pitch = 90 độ
Gimbal Lock là hiện tượng mất một bậc tự do trong không gian 3 chiều khi 2 trong 3 trục trùng nhau ( hoặc song song nhau) dẫn đến hệ thống chỉ quay trong không gian 2 chiều
Ví dụ giả sử trong trường hợp Góc Tait-Bryan: nếu góc Pitch = 90 độ khi đó theo thứ tự ta có trục X sẽ trùng với trục Z sau khi thực hiện xong góc quay quanh trục Y , khi đó khi quay quanh trục X thì sẽ giống như quay quanh
Trang 33Như vậy các góc Picth và Roll sẽ phải bị giới hạn trong tầm từ (-π/2 , π/2).Để khắc phục nhược điểm này của phương pháp góc Euler, chỉ có 1 cách duy nhất là sử dụng hệ tọa độ không gian 4 chiều
e) Ứng dụng của phương pháp đo góc sử dụng cảm biến gia tốc
Thiết bị sử dụng để áp dụng lý thuyết góc Euler là cảm biến gia tốc Cảm biến gia tốc được sử dụng trong đề tài này là một cảm biến gia tốc ba chiều cho phép xác định một cách độc lập các gia tốc theo các phương trục toạ độ X,Y và
Z, đó là ADXL345 Dựa vào 3 phương này ta có thể xác định được góc theo hệ thống định vị INS
Hệ thống định vị quán tính INS gồm các accelerometer để đo các góc nghiêng của hệ thống trong không gian gồm có yaw, pitch và roll Như trong hình bên dưới thì pitch là góc nghiêng của máy bay khi chúc lên hay xuống, roll là góc nghiêng cánh của máy bay, còn yaw là góc của máy bay quay quanh trục thẳng đứng
Hình 2.16 Ca ́ c góc Yaw, Pitch và Roll
Các accelerometer đo gia tốc dài sẽ được gắn lên ba trục của hệ tọa độ chuyển động để đo các gia tốc dài tương ứng của hệ thố ng Sau đó máy tính sẽ tính toán ra được trạng thái hiện tại của hệ thống