XÂY DỰNG HỆ THỐNG NHẬN BIẾT NGÔN NGỮ DẤU HIỆU SỬ DỤNG CẢM BIẾN VI CƠ ĐIỆN TỬ
Trang 1ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
Đinh Duy Chương
XÂY DỰNG HỆ THỐNG NHẬN BIẾT NGÔN NGỮ DẤU
HIỆU SỬ DỤNG CẢM BIẾN VI CƠ ĐIỆN TỬ
KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY
Ngành: Điện tử - Viễn thông
HÀ NỘI – 2005
Trang 2ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
Đinh Duy Chương
XÂY DỰNG HỆ THỐNG NHẬN BIẾT NGÔN NGỮ DẤU
HIỆU SỬ DỤNG CẢM BIẾN VI CƠ ĐIỆN TỬ
KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY
Ngành: Điện tử - Viễn thông Cán bộ hướng dẫn: TS Nguyễn Thăng Long
HÀ NỘI – 2005
Trang 3Lời cảm ơn!
Trước tiên em xin gửi lời cảm ơn chân thành tới GS TSKH Nguyễn Phú Thùy, người đã dìu dắt, hướng dẫn em trong suốt thời gian làm khoá luận Sau đó em xin bày tỏ lòng biết ơn tới TS Nguyễn Thăng Long với kinh nghiệm và lòng nhiệt tình
đã trực tiếp dạy bảo, kịp thời động viên em những lúc khó khăn Qua đây, em cũng xin cảm ơn các anh cùng các bạn trong bộ môn “Vi cơ điện tử và vi hệ thống” đã tạo điều kiện thuận lợi để em hoàn thành bài khoá luận này
Em xin chân thành cảm ơn !
Hà Nội tháng 06 năm 2005
Đinh Duy Chương
Trang 4Tóm tắt nội dung khoá luận
Trong đề tài này trước tiên là tìm hiểu đề tài, thế nào là ngôn ngữ dấu hiệu Tiếp theo là tìm hiểu các phương pháp nhận biết ngôn ngữ dấu hiệu, biết được ưu nhược điểm của các phương pháp, từ đó sẽ lựa chọn phương pháp nhận biết dùng trong đề tài Trong đề tài này em chọn phương pháp sử dụng cảm biến vì phương pháp này có những ưu điểm rất phù hợp với Việt Nam Phương pháp này đầu tiên là tìm hiểu về các thiết bị được sử dụng trong đề tài Các thiết bị này là: sensor gia tốc, vi điều khiển BasicStamp và cách thức kết nối vi điều khiển với sensor và máy tính PC Khi tìm hiểu về các thiết bị như sensor thì vấn đề đặt ra là phải chuẩn hoá chúng, tiếp
đó là xây dựng phần cứng cho hệ thống nhận biết dấu hiệu Và một yếu tố quan trọng nữa là viết phần mềm cho vi điều khiển và trên máy tính để nhận biết dấu hiệu Cụ thể trong đề tài này em đã tìm hiểu được nguyên tắc hoạt động của sensor ADXL202, vi điều khiển BasicStamp và một số ngôn ngữ để nhận biết dấu hiệu Phần thực hành đã chuẩn hoá được các sensor, bước đầu xây dựng được một hệ nhận biết đơn giản
Trang 5MỤC LỤC
Chương 1 TỔNG QUAN 7
1.1 Ngôn ngữ dấu hiệu 7
1.1.1 Ngôn ngữ dấu hiệu là gì ? 7
1.1.2 Một số chuẩn trên thế giới và Việt Nam 8
1.1.3 Mục tiêu của khoá luận 9
1.2 Các phương pháp nhận biết ngôn ngữ dấu hiệu 10
1.2.1 Nhận biết ngôn ngữ bằng phân tích hình ảnh 10
1.2.2 Nhận biết bằng cảm biến 15
1.2.3 Nguyên tắc vận hành của việc sử dụng cảm biến 16
1.2.4 So sánh hai phương pháp 25
Chương 2 TÌM HIỂU VỀ CẢM BIẾN VÀ VI ĐIỀU KHIỂN 26
2.1 Tìm hiểu về cảm biến gia tốc 26
2.1.1 Nguyên lý làm việc của cảm biến 26
2.1.2 Sensor gia tốc ADXL202 26
2.1.3 Phương pháp chuẩn 31
2.2 Tìm hiểu về vi điều khiển BasicStamp 32
2.2.1 Nguyên lý vận hành 32
2.2.2 Phần cứng 32
2.2.3 Ngôn ngữ BasicStamp 34
Chương 3 XÂY DỰNG THIẾT BỊ GĂNG TAY CẢM NHẬN GIA TỐC 35
3.1 Thiết kế phần cứng 35
3.2 Chuẩn hoá sensor 36
3.3 Xây dựng phần mềm 40
3.3.1 Viết chương trình cho vi điều khiển BasicStamp 40
3.3.2 Chương trình trên máy tính 40
Trang 6Mở đầu
Hiện nay trên thế giới cũng như ở Việt Nam người ta có thể giao tiếp với nhau bằng nhiều phương tiện, đặc biệt như: qua mạng Internet, mạng điện thoại Những phương tiện đó chỉ áp dụng khi cách trở về mặt địa lý Còn bình thường khi gần nhau người ta giạo tiếp với nhau bằng ngôn ngữ nói thông thường
Việc giao tiếp đối với người bình thường thì không có vấn đề gì Nhưng đối với những người khiếm thính thì lại là chuyện khác Người khiếm thính họ nói chuyện với nhau chủ yếu bằng cử chỉ, hành động Đặc biệt những người bình thường muốn hiểu được họ nói gì thì không phải chuyện dễ dàng Quan trọng nhất là việc học tập của những người khiếm thính cũng gặp rất nhiều khó khăn
Do đó đề tài này em muốn xây dựng một thiết bị nhận biết ngôn ngữ dấu hiệu
để giúp cho việc giao tiếp và học tập của những người khiếm thính được dễ dàng hơn Giúp cho họ có thể hoà nhập vào cuộc sống như những người bình thường
Hà Nội tháng 06 năm 2005
Đinh Duy Chương
Trang 7Chương 1 TỔNG QUAN
1.1 Ngôn ngữ dấu hiệu
1.1.1 Ngôn ngữ dấu hiệu là gì ?
9 Hiểu một cách đơn giản thì ngôn ngữ dấu hiệu chính là những cử chỉ, hành động của con người, những động tác của tay hoặc có thể là của một bộ phận nào đó trên cơ thể con người Chính từ những cử chỉ hành động đó mà người ta có thể hiểu được và giao tiếp với nhau
9 Khi nghiên cứu về ngôn ngữ dấu hiệu ta cũng đặt một câu hỏi là tại sao phải nghiên cứu ngôn ngữ dấu hiệu Câu trả lời là để giao tiếp với những người khiếm thính
và ngoài ra có thể có một số ứng dụng đặc biệt khác
9 Với những người khiếm thính thường gắn liền với bệnh câm Do đó giao tiếp của họ rất hạn chế Trong hoàn cảnh như vậy những họ vẫn tìm cách để nói chuyện với nhau, một cách đơn giản là họ sẽ dùng hình thức viết chữ để nói chuyện với nhau Mặc
dù vậy việc này thường rất mất thời gian đôi khi còn bất tiện Để giải quyết vấn đề trên
họ đã đưa ra một ngôn ngữ gọi là ngôn ngữ dấu hiệu tức là họ không giao tiếp với nhau như những người bình thường mà dùng những cử chỉ hành động của mình để nói cho người khác hiểu
9 Trên thực tế việc học đối với những người khiếm thính là rất khó khăn Như ngày nay ở Việt Nam việc phổ cập giáo dục cho những người khiếm thính đã được quan tâm, nhưng vẫn còn rất hạn chế Vì chỉ với việc phổ cập mức tiểu học phải kéo dài ít nhất là 9 năm Nên đối việc phổ cập mức cao hơn là rất khó khăn Đối với những người trước khi bị khiếm thính lại không biết chữ thì đòi hỏi việc đào tạo lại càng khó khăn hơn
9 Ngôn ngữ dấu hiệu chỉ được sử dụng trong một phạm vi hẹp nên rất ít người bình thường hiểu được ngôn ngữ này Điều này tạo nên một rào cản lớn trong giao tiếp giữa người khiếm thính và người bình thường Người khiếm thính và người câm sẽ khó có cơ hội hoà nhập vào cộng đồng người bình thường
9 Trên thế giới, hiện đã có nhiều nghiên cứu nhằm xây dựng các thiết bị có thể trợ giúp sự giao tiếp giữa những người khiếm thính và những người bình thường
Trang 8Trong khi đó, ở Việt Nam, hiện chưa có các nghiên cứu dành cho những người khiếm thính
9 Xuất phát điểm từ đó trong đề tài này em muốn tìm hiểu và bước đầu xây dựng một hệ thống nhận biết dấu hiệu để giao tiếp với những người khiếm thính Và từ
đó giao tiếp giữa những người khiếm thính và những người bình thường được cải thiện hơn Ngoài ra, thiết bị cũng có thể dùng trong mục đích học tập cho người khiếm thính
1.1.2 Một số chuẩn trên thế giới và Việt Nam
9 Để thống nhất trong giao thiếp, ngôn ngữ dấu hiệu cũng có những chuẩn nhất định Trên thế giới phổ biến nhất là ngôn ngữ ASL (American Sign Languague) của
Mỹ Với chuẩn này các chữ trong bảng chữ cái và các số tự nhiên được mã hoá hết sức đơn giản Trong khi đó, các từ được mã hoá phức tạp hơn nhiều Mỗi từ (khái niệm) được miêu tả bởi 5 đặc tính của ký hiệu: hình dạng bàn tay, vị trí bàn tay so với cơ thể người, hướng của bàn tay, chuyển động của bàn tay và ngón tay, biểu hiện của nét mặt
và cơ thể
Hình 1a: Dấu hiệu của các chữ cái trong bảng chữ cái
Hình 1b: Dấu hiệu của các chữ số tự nhiên
9 Với các quốc gia khác nhau lại có những đặc trưng ngôn ngữ khác nhau Vì vậy, mỗi quốc gia thường có chuẩn riêng cho mình Chuẩn ngôn ngữ dấu hiệu của Việt Nam về cơ bản là giống chuẩn của Mỹ tuy nhiên cũng có một số khác biệt Đó là sự thêm vào đó những con dấu và có thêm một số chữ cái khác mà trong bảng trên không
có như chữ Ô, Ơ, Ư, Ê, Â Do đó ta phải tổ hợp thêm một số cử chỉ khác nữa để phân
Trang 9biệt các chữ cái và các con số Và một số chữ số của ta cũng khác với chữ số trong bảng trên
Hình 2: Bảng chữ cái và chữ số tiếng Việt 1.1.3 Mục tiêu của khoá luận
Một thiết bị nhận biết và chuyển đổi ngôn ngữ dấu hiệu sang ngôn ngữ thông thường có thể được xây dựng theo hai phương pháp:
Trang 10o Phương pháp nhận biết từng từ: Phương pháp này có ưu điểm là tốc độ chuyển đổi nhanh, tiện cho người sử dụng nhất Tuy nhiên, việc xây dựng một hệ thống như vậy rất phức tạp ví dụ như:
• Cần nhiều tham số đầu vào
• Thuật toán xử lý phức tạp
• Đòi hỏi phải có bộ từ điển
• Khi có từ mới thì phải huấn luyện cho hệ thống trước
o Phương pháp đánh vần: Người sử dụng sẽ đánh vần theo bảng chữ cái Phương pháp này có nhược điểm là tốc độ chuyển đổi sẽ chậm hơn nhiều phương pháp dùng từ Tuy nhiên, nó có một số ưu điểm sau:
• Tham số đầu vào không nhiều
• Có thể dùng các thuật toán tương đối đơn giản
• Có thể tạo ra các từ tuỳ ý mà không cần bộ từ điển
Từ các phân tích trên, ta thấy rằng phương pháp đánh vần có khả năng dễ dàng tích hợp với các bộ vi xử lý để tạo nên các thiết bị nhỏ gọn, tiện dụng cho người
sử dụng Phương pháp này cũng là tiền đề cho việc xây dựng các thiết bị sử dụng phương pháp nhận biết từng từ
Vì vậy, trong khoá luận này, em tập trung vào việc tìm hiểu xây dựng một hệ thống nhận biết ngôn ngữ dấu hiệu sử dụng phương pháp đánh vần
1.2 Các phương pháp nhận biết ngôn ngữ dấu hiệu
Để xây dựng được một hệ thống nhận biết ngôn ngữ dấu hiệu, trước hết, em xin trình bày về các phương pháp nhận biết đang được nghiên cứu trên thế giới
1.2.1 Nhận biết ngôn ngữ bằng phân tích hình ảnh
1.2.1.1 Giới thiệu về phương pháp phân tích hình ảnh
Nhận biết ngôn ngữ dấu hiệu qua video (camera) từ xa là một yêu cầu trực quan Để đưa ra mã hình ảnh thành ngôn ngữ dấu hiệu, cần thiết phải tìm những vùng
có thông tin về hình ảnh Camera sẽ dõi sự di chuyển của những người khiếm thính và
sẽ lọc ra chuỗi hình ảnh ngôn ngữ dấu hiệu phù hợp
Trang 111.2.1.2 Đặc điểm của phương pháp này
9 Người khiếm thính sử dụng phương tiện ngôn ngữ dấu hiệu để đọc và viết chính tả Nhận biết ngôn ngữ dấu hiệu được dựa trên hình ảnh và sự di chuyển của tay Cấu trúc trực quan của ngôn ngữ dấu hiệu có thể truyến đạt những khái niệm phức tạp nhanh chóng và chính xác
9 Việc đề cập nhận biết trực quan là rất quan trọng cho những người khiếm thính vì khả năng của ngôn ngữ dấu hiệu là ở khoảng cách, tuỳ thuộc vào khoảng cách
mà cho ta sự nhận biết chính xác hay không chính xác Tuy nhiên vẫn có lỗi và hệ thống này có thể gây khó chịu cho người sử dụng
9 Ngôn ngữ dấu hiệu cập nhật không nhanh, sự di chuyển cụ thể đưa ra những khái niệm và những từ Trong những lần thực nghiệm đã đưa ra dấu hiệu hình ảnh của những từ ứng với miệng và ngôn ngữ cử chỉ Hình dưới chỉ ra 2 khung từ 1 video clip của ngôn ngữ dấu hiệu (BSL)
Hình 3: Các video clip 1.2.1.3 Phương thức
9 Thí nghiệm với 8 người khiếm thính Trong suốt quá trình thực nghiệm hướng nhìn của mỗi người được ghi vào một video clip
Trang 129 Từ việc kiểm tra video clip hình 3 Video clip đã được đưa ra trên màn hình
PC và người xem clip từ khoảng cách cố định Sự di chuyển được ghi lại trong suốt quá trình xem sử dụng một hệ thống nhìn “Quick Glance” Hệ thống này sử dụng tia hồng ngoại để ghi lại hình ảnh ở tốc độ 30Hz
9 Hướng nhìn được ghi lại dưới dạng một file text và file này tương ứng với 2 phút video clip trong quá trình phân tích
1.2.1.4 Kết quả của việc phân tích hình ảnh
9 Về mặt không gian: Việc đặt toạ độ (x,y) cho 3 sự kiện (User A, User B, User
C, và các vấn đề liên quan đến khiếm thính) được thể hiện trên hình 4, hình 5, hình 6
Trang 13User C
Hình 6: Phân vùng trong không gian của User C
9 Hình này tương ứng với video clip thứ hai, kết quả tương tự như video clip thứ nhất Quan sát sự di chuyển của 8 vật thể sẽ biết được những điểm giống nhau Trong mỗi trường hợp, việc quan sát được tập trung trên bề mặt của dấu hiệu video clip, thỉnh thoảng có sự trệch tới những vùng khác nhau phổ biến trên trục X qua bề mặt của dấu hiệu (User A và User C) Hai vật thể (một trong những vật thể đó là User B) là trung tâm rất chuẩn xác với một vài sự trệch hướng Độ chính xác là 10x10 pixel trong mỗi một hình ảnh Những điểm chính xác chủ yếu là quanh bề mặt trung tâm của dấu hiệu
9 Hình 8 chỉ ra trung tâm User B, được phủ vói những vòng đưa ra mô tả góc quay quanh một điểm trung tâm
Trang 149 Vòng tròn là tâp trung vị trí trung bình của tất cả các mẫu và được vẽ ở góc cố định 2.5o, 5o và 10o từ trung tâm và được làm sạch từ hình này Phần lớn điểm quan sát nằm trong khoảng 2.5o của trung tâm: hơn 75% các điểm rơi vào vòng tròn này với User A và C, hơn 90% cho User B
9 Về mặt thời gian: Hình 8 chỉ ra hình ảnh của User A trong video clip thứ hai Giá trị trung bình của trục Y là 185 và những điểm làm sạch được chỉ ra Hướng nhìn được tập trung chủ yếu quanh vị trí này, thỉnh thoảng cũng có sự sai khác Sự sai khác này là từ phần cuối đặc trưng ít hơn 0.5 giây và được tập trung trong trục X thông qua điểm trung tâm Trong chuỗi hình ảnh, dấu hiệu được nhìn thấy bên dưới
Hình 8: Tín hiệu thu được từ hình ảnh 1.2.1.5 Phân tích hệ số dư thừa
9 Kiểm tra video clip được mã hoá sử dụng mã hoá Baseline H.263 ( với bước lượng tử cố định là 8) và số hệ số non-zero vẫn trong mỗi block sau sự bù chuyển động, DCT và bước lượng tử được đếm Hình 9 mô tả tổng số hệ số lượng tử dư thừa non-zero trong mỗi vị trí block cho những khung inter-code 200 của chuỗi
Trang 15Hinh 9: Hệ số dư thừa
9 Hình trên còn chỉ ra hệ số non-zero được tập trung quanh đầu, trên cơ thể và cánh tay của người ra dấu hiệu Điều này có thể được đáp ứng từ vị trí camera và người ra hiệu không thể di chuyển tới vị trí đứng của họ trong chuỗi Tuy nhiên sự tập trung cao của hệ số non-zero ở những vùng trái và phải thấp hơn của chuỗi Người ra hiệu di chuyển cánh tay của họ tới một số vị trí nhưng năng lượng dư thừa phần lớn giảm xuống từ sự di chuyển tay trong hai vùng này Hệ số năng lượng dư thừa trong vùng này liên quan tới mức thấp
1.2.1.6 Kết luận
Từ kết quả thực nghiệm người sử dụng ngôn ngữ dấu hiệu đã đưa ra một sự phù hợp trong phương pháp nhận biết của họ, điều này phù hợp với tất cả các vật thể
và tương ứng với sự quan sát trong khi nghiên cứu ngôn ngữ dấu hiệu Việc chọn vị trí
sẽ cải thiện chất lượng của việc mã hoá chuỗi ngôn ngữ dấu hiệu hình ảnh Sự quan tâm của người sử dụng là tập trung trên những vùng có đặc điểm tốt quanh người ra hiệu, với những cử chỉ bất ngờ của tay người Những dấu hiệu này có thể dành những vùng ưu tiên của hình ảnh có trong không gian và biểu thị thời gian
1.2.2 Nhận biết bằng cảm biến
Ở đây người ta dùng một hệ gồm nhiều sensor gắn với vi điều khiển và máy tính Thiết bị này được mô ta bởi hình sau
Trang 16Hình 10: Sơ đồ kết nối hệ đo với vi điều khiển và máy tính
Hệ nhận biết bằng cảm biến bao gồm các thành phần:
9 Cụ thể là từ tín hiệu xung của hệ sensor vi điều khiển sẽ đọc tín hiệu đó và xử
lý, tiếp theo vi điều khiển sẽ gửi dữ liệu dưới dạng ASCII cho máy tính qua cổng COM
9 Thành phần của hệ thống là Accele Glove, cung cấp cách đo vị trí của các ngón tay tương ứng với véc tơ trọng trường
9 Bằng việc sử dụng lối ra số của sensor gia tốc MEMS gắn trên các ngón tay
và sử dụng vi điều khiển Máy tính PC được sử dụng cho việc phân tích dữ liệu và thực hiện các thuật toán Khi lập trình với các thuật toán, vi điều khiển sẽ chuyển tới
bộ tạo ngưỡng tiếng nói với những ký tự ASCII, bởi vậy mà trên thực tế người ra hiệu những từ “speaks out” và những câu ngắn
Trang 171.2.3.1.1 Định vị sensor
Tay người có 17 điểm tích cực trên cổ tay: 3 trên mỗi ngón trỏ, ngón giữa, ngón nhẫn và ngón út, 3 trên ngón cái và pitch roll trên cổ tay Những điểm cần thiết giữa những dấu hiệu là nhân tố chủ yếu, nếu hệ thống có thông tin đầy đủ, không rõ ràng sẽ giảm tốc độ nhận dạng Gắn liền với 5 trục sensor trên đầu ngón tay, những điểm của ngón tay và điểm đầu của ngón tay cái, ngoại trừ tình trạng có nhiều nghĩa cho 26 dáng điệu của bảng chữ cài ASL Việc định vị trục được chỉ ra trên hình sau:
Hình 11: Các trục trên sensor khi gắn lên tay
1.2.3.1.2 Tín hiệu thu được
Vị trí đọc được là chu kỳ của tín hiệu lối ra Khi một sensor ở vị trí ngang chu
kỳ là 50% Khi góc nghiêng của nó từ +90o tới –90o chu kỳ biến đổi từ 37.5% tới 62.5% Vi điều khiển giám sát lối ra và đo trong khoảng thời gian lối ra ở mức cao, nếu sử dụng bộ đếm 10 ms thì giải đo được sẽ là từ (375/10) = 37 count với 90o tới tối
đa là (625/10) = 62 count với –90o, một span là 25 count Sự không tuyến tính và bão hoà hai đặc tính này của thiết bị làm giảm dải sử dụng xuống còn Vì thế độ phân giải là 6.5
±
o) và nhỏ hơn Quam (11o) CyberGlove có thể được hiệu chỉnh
đo những dải khác nhau của những biến tố sử dụng 8 bit, nhưng độ chính xác bị giảm xuống, giảm sự lặp lại
1.2.3.1.3 Thu thập dữ liệu
9 Độ rộng 10 xung được đọc bởi vi điều khiển, bắt đầu với trục X tiếp theo là Y lần đầu là ngón cái Đưa ra 10 ms là tập trung tất cả các vị trí của ngón tay Trong suốt quá trình phân tích trạng thái của các ngón tay thì vị trí được gửi như một gói dữ liệu
10 byte qua cổng nối tiếp của PC và được ghi lại dưới file text
Trang 189 Mọi ký tự dấu hiệu của bảng chữ cái Ký tự “J” và “Z” được lấy mẫu ở vị trí cuối cùng Điều này cho phép bắt được những sự khác nhau và những người ra hiệu tương tự trong 26 file với ma trận 10x10
1.2.3.2 Lựa chọn tính năng và nguồn gốc
9 Tập hợp 10 quá trình đo, hai trục trên một ngón tay, đưa ra một véc tơ của dữ liệu Như đã được chỉ ra trong lời phần trên: Uras đưa ra đặc điểm diễn biến của sự việc, Lamar rút ra được “eigenvalues” và “eigenvalue” từ những hình ảnh Kramer không thử đặc tính ban đầu, nhưng làm việc với véc tơ dữ liệu, như khi Shahabi làm, ông khẳng định lần đầu tiên sử dụng hàng loạt quyết định cho việc phân tích dữ liệu căn cứ vào xúc giác, ông cũng khẳng định lần đầu tiên sử dụng “Bavesian Classifier” cho phân tích dữ liệu căn cứ vào xúc giác và sử dụng việc so sánh “Back Propagation Neural Networks” với “Bayesian Decision Tree” để nhận ra dữ liệu tĩnh Trái với kết quả này ông cho rằng “Decision trees” không phù hợp với việc nhận dạng dấu hiệu, ta phải chỉ rõ và xác minh sự trái ngược này
9 Mục tiêu là rút ra một tập hợp những đặc điểm để đưa ra cử chỉ mà không có
sự tối nghĩa trong “Posture Space” Nếu Stokoe và Costello đã định nghĩa cử chỉ như
là sự kết hợp của hình ảnh và hướng của tay, và hai tính năng này phù hợp để đưa ra một số ký tự dễ hiểu, sau đó việc xử lý rút ra những đặc trưng sẽ lấy lại hai thành phần này từ dữ liệu đơn giản Accele Glove khác với tất cả thiết bị khác được tìm thấy, trong đó nó có thể không chỉ đo độ uốn của ngón tay mà còn xác định hướng của tay
mà không cần sensor khác ở bên ngoài như bộ theo dõi từ trường Hay bộ theo dõi siêu
âm của Mattel’s Ở đây ta định nghĩa một véc tơ P trong không gian cử chỉ
9 P=[hình ảnh tay, hướng lòng bàn tay]
9 P là sản phẩm của véc tơ dữ liệu đơn giản D bằng việc chuyển đổi ma trận T: P=D*T=[Xg Yg yi] (1)
9 Véc tơ dữ liệu đơn giản ở đây là:
D = [xt yt xi yi xm ym xr yr xp yp] (2)
9 T = ngón cái, I = ngón trỏ, M = ngón giữa, R = ngón nhẫn, P = ngón út
9 Hình ảnh tay được chia thành hai phần con, Xg và Yg Phần đầu tiên đo độ cuộn tương ứng với cổ tay, phần thứ hai đo độ lên xuống của ngón tay Thành phần khác của không gian cử chỉ là hướng của lòng bàn tay yi, lớp cử chỉ chia thành 3 lớp
Trang 19con: closed, horizontal và vertical (hay open) Chỉ số vị trí y được sử dụng cho những
cử chỉ này Ma trận chuyển vị:
T T
0 0 0 0 0 0 1 0 0 0
1 0 1 0 1 0 1 0 1 0
0 1 0 1 0 1 0 1 0 1
“Vertical” Thành phần thứ hai, Yg, mô tả hoàn toàn hình ảnh của tay như tổng số các khớp ngón tay, điều này đạt được bằng cách cộng tất cả 5 tín hiệu y Thành phần thứ
ba của véc tơ D là yi Với các tính năng mới này, các mẫu này được hình dung một cách dễ dàng như là các điểm trong không gian 3 chiều
1.2.3.3 Phân loại
9 Không gian mẫu bao gồm 50 véc tơ cử chỉ cho mỗi ký tự trong 26 ký tự Hình
12 chỉ ra giá trị trung bình 50 mâu của một ký tự trong 26 ký tự trong không gian cử chỉ
Trang 20Hình 12: Các cử chỉ trong không gian
9 Hình 13 chỉ ra giá trị trung bình được chiếu trên trục “Vertical”, vị trí y của ngón trỏ yi ứng với trục này
Hình 13: Chiếu lên trục “Vertical”
9 Nói chung, việc giải quyết một số vấn đề nhận dạng đa lớp có thể thực hiện được với phân loại đơn Tuy nhiên việc phân loại này sẽ có độ phức tạp cao, như đã được tìm thấy trong phần trên Thay vào đó ta chia không gian sử dụng thành hai phần,
Trang 21tạo ra 3 lớp con chính được nhóm rõ ràng trong hình 13: “Vertical”, “Horizontal”, và
“Closed”
9 Sau khi phân biệt thứ tự đầu tiên này, độ phức tạp của việc phân loại giảm đi,
và dễ dàng thực thi sử dụng một vi điều khiển BasicStamp đơn chíp Và quá trình nhận dạng một cử chỉ có thể được mô tả như sau:
• Bước 1: Các lớp con được phân biệt sử dụng hai phần xác định bởi vị trí ngón trỏ trong hình 13
• Bước 2: Các thành phần của mỗi lớp con được chiếu lên mặt phẳng xác định lớp con Nói một cách khác, chỉ Xg và Yg được đưa vào sau tính toán trong xử lý phân loại Hình 14.a,b,c chỉ ra sự suy giảm mới trong kích thước
Trang 22Hinh 14: Sự suy giảm
• Bước 3: Nếu việc thực hiện mới không đủ để phân biệt một ký tự sử dụng một quy tắc đơn giản (quy tắc Bayes, hàm tuyến tính), thì một lớp con mới được gửi tới phân loại khác để tìm kiếm những khác biệt riêng từ dữ liệu ban đầu
9 Lớp con “Vertical” được định nghĩa bởi tất cả những lớp dưới mặt phẳng xác định bởi yi = 9 Những ký tự ‘B’, ‘D’, ‘K’, ‘L’, ‘R’, ‘U’, ‘V’, và ‘W’ thuộc lớp con này Lớp con “Horizontal” được đặt giữa mặt phẳng xác định bởi yi = 9 và mặt phẳng xác định bởi yi = 12 Những ký tự ‘C’, ‘E’, ‘G’, ‘H’, ‘J’, ‘P’, ‘T’, ‘X’, và ‘Z’ thuộc lớp con này tất cả những lớp với yi > 12 sẽ thuộc lớp con “Closed” Đó là trong trường hợp cho các ký tự ‘A’, ‘F’, ‘I’, ‘M’, ‘N’, ‘O’, ‘Q’, ‘S’, và ‘Y’
9 Lưu ý rằng, mặc dù dấu hiệu ‘F’ không giống như sử dụng một nắm tay khép kín, và ‘D’ không giống như bàn tay mở ở vị trí dọc, chúng được phân loại như trên vì việc phân loại chỉ dựa trên trạng thái của ngón tay trỏ
Trang 231.2.3.4 Cấu trúc có thứ tự
Dưới đây là sơ đồ cấu trúc có thứ tự
Hình 15: Sơ đồ cấu trúc có thứ tự Hàng loạt quyết định sử dụng ký hiệu được đưa ra bởi Erenshteyn Khối đầu tiên trong trật tự này liên quan tới “feature extraction” ở đó Xg, Yg, và yi được tính toán sử dụng phương trình (1), (2), và (3), các mẫu không gian 3 chiều được tạo dạng
“Dispatcher” đầu tiên thực hiện một sự so sánh đơn giản trên Yi để phân biệt ba lớp con được chỉ ra trên hình 15 Mức thứ hai của “Dispatchers” sẽ phân biệt xa hơn tới các bộ phận khác của các lớp con dựa trên các tính năng tương tự của chúng, như cử chỉ ‘flat’ and ‘rolled’ trong hình 15 Người nhận dạng sẽ nhìn vào các thuộc tính trong không gian tính năng để cuối cùng nhận ra các ký tự từ tập hợp các lớp con Ví dụ như trong hình 15, ký tự ‘F’ dễ dàng nhận từ phần còn lại bằng việc vẽ một đường tại Yg =
45 Giống như ‘F’, nhiều ký tự được nhận ra trong hai bước trong khi đó càng về cuối thì càng khó khăn
Trang 241.2.3.5 Kết quả
9 Phương thức phân loại đã được thực thi như một chuỗi các câu lệnh else’ sử dụng Matlab, và đã được kiểm tra sử dụng tổng tất cả 1300 mẫu để đo tốc độ nhận dạng, trước khi vi điều khiển được lập trình với các thuật toán 21 trong 26 ký tự đạt tới tốc độ nhận dạng 100% sử dụng phương thức thay thế lại Ký tự ‘I’ và ‘Y’ trùng khớp với nhau, như được chỉ trên hình 15 Để nhận ra hai ký tự này, quy tắc Bayes đã được áp dụng như sau: mẫu x được quy cho lớp wI nếu:
‘if-then-9 P(x|wI) p(wI) > p(x|wY) p(wY) (7)
9 Trong đó p(wI) là xác suất ưu tiên của ký tự ‘I’ và p(wY) là xác suất ưu tiên của ký tự ‘Y’ Để ước lượng xác suất điều kiện p(x|wI) và p(x|wY), ta sử dụng biểu đồ phân phối lớp trên Xg
9 Tốc độ “misclassification” được đưa ra từ quy tắc Bayes, dựa trên biểu đồ, được ước lượng như là phần trăm của các mẫu được phân loại Nói một cách cụ thể, hai mẫu của Y được “missclassified” như những thành phần của lớp I, tốc độ lỗi là: E(Y) = 2 / 50 = 4%
9 Ký tự ‘R’, ‘U’, và ‘V’ là trường hợp khó khăn nhất, khi các phân phối lớp của chúng trùng nhau, do đó không thể chỉ một hàm tuyến tính để phân biệt chúng mà không xảy ra lỗi, hai thành phần của lớp ‘U’, và một thành phần từ lớp ‘V’ và lớp ‘R’ được “misclassification” làm giảm độ chính xác tới 90%, 78% và 96% một cách tương ứng Tính năng được sử dụng để lắp ráp biểu đồ trong trường hợp này là vị trí X của ngón trỏ, hay sự giạng ra của ngón tay
1.2.3.6 Kết luận về phương pháp này
Với hiểu biết của chúng ta, việc sử dụng sensor gia tốc tại các điểm nối PIP trong hệ thống “self-contained” để nhận ra bảng chữ cái ASL chỉ là lý thuyết Việc đưa những dấu hiệu như là tập hợp các mẫu 3-D và phép chiếu sau đó lên mặt phẳng cho phép khắc phục vấn đề về chiều cũng như tiếp cận lý thuyết trong việc nhận dạng hình ảnh của tay Hệ thống đã chứng minh tính linh động và chính xác cho dấu hiêu nhận dạng từ những người sử dụng khác nhau thậm chí họ là những người chưa có kinh nghiệm trong vấn đề ra hiệu Không giống như CyberGlove và DataGlove, độ chính xác không phụ thuộc vào người sử dụng, kích thước tay Vấn đề chính của việc sử dụng sensor gia tốc như là các sensor vị trí góc là chúng đáp ứng sự thay đổi với véc tơ trọng trường, nhưng chúng không nhạy cảm với cử động quay Do đó sử dụng Accele Glove với dấu hiệu “Horizontal” là khó có thể thực hiện, cũng như với các dấu hiệu
Trang 25NASA Một thuận lợi của phương pháp chiếu là sau khi phép chiếu của một lớp con lên mặt phẳng tương ứng của nó, có thể tìm ra khoảng trống ở đó dấu hiệu mới có thể được đưa ra Đó là trường hợp với ‘space’ được thêm vào bảng chữ cái ASL để phân biệt giữa các từ, và ‘enter’ để việc phân biệt các từ hay các câu được hoàn thành Hai lệnh này thực sự chuyển đổi hoàn toàn hệ thống này thành Finger Spelling tới bộ tạo ra tiếng nói
1.2.4 So sánh hai phương pháp
9 Phân tích hình ảnh
• Ưu điểm
Không bị cản trở bởi chuyển động
Độ nhạy không bị mất bởi việc tiếp cận
Dữ liệu thu được chính xác
Có thể thu thập được hướng, vị trí và dữ liệu xúc giác
Không bị nghẽn dữ liệu
Giá thành thấp
• Nhược điểm
Yêu cầu nguồn cung cấp
Độ nhạy bị suy giảm bởi việc tiếp cận
Có thể bị hạn chế bởi chuyển động
Từ việc phân tích các phương pháp trên, em thấy rằng phương pháp dùng cảm
Trang 26Chương 2 TÌM HIỂU VỀ CẢM BIẾN VÀ VI ĐIỀU KHIỂN
2.1 Tìm hiểu về cảm biến gia tốc
2.1.1 Nguyên lý làm việc của cảm biến
Có nhiều loại cảm biến có thể đo được các thông số khác nhau Trong đó việc
đo góc là được yêu cầu trong nhiều lĩnh vực như trong tự động hoá và trong công nghiệp Sensor có thể được chia thành nhiều loại theo nguyên lý chung như: Từ trường, quang và điện dung
2.1.2.Sensor gia tốc ADXL202
Có rất nhiều loại sensor có thể áp dụng được trong lĩnh vực này Song hiện nay sensor gia tốc ADXL202 được dụng khá phổ biến và đặc biệt là sự tiện lợi của sensor này nên trong đề tài em dùng sensor ADXL202
2.1.2.1 Tính năng
9 Sensor này được tích hợp trên một chíp đơn
9 Đo được cả gia tốc động và tĩnh
9 Người sử dụng có thể điều chỉnh được chu kỳ lối ra
9 Nguồn cung cấp thấp < 0.6mA
Trang 272.1.2.3 Mô tả chung
9 ADXL202 gia thành thấp, nguồn cung cấp nhỏ Có dải đo gia tốc ±2g/±10g
có thể đo được cả hai gia tốc động và tĩnh
9 Lối ra là tín hiệu số tương ứng với gia tốc trên hai trục Lối ra có thể đo trực tiếp nhờ bộ đếm của vi điều khiển mà không cần bộ biến đổi AD hay một bộ logic nào Chu kỳ lối ra được hiệu chỉnh từ 0.5ms tới 10ms thông qua một điện trở (Rset) Nếu điện áp lối ra được đề cập thì điện áp này sẽ cân xứng với gia tốc sẵn có từ hai chân XFilt và YFilt của sensor
9 Dải thông của ADXL202 có thể được đặt từ 0.01 Hz tới 5 kHz thông qua hai điện trở Cx và Cy Nhiễu nền điển hình là 500µg / Hz cho phép tín hiệu dưới 5mg
được giải quyết cho dải thông dưới 60 Hz
9 Dải nhiệt độ làm việc của sensor là 0oC tới +70oC, tuy nhiên trong công nghiệp lại là từ -40oC tới +85oC
2.1.2.4 Sơ đồ khối chức năng
Dưới đây là sơ đồ khối chức năng của sensor ADXL202
Hình 20: Sơ đồ khối chức năng
Trang 282.1.2.5 Cấu hình chân
Hình 21: Cấu hình chân 2.1.2.6 Nguyên lý vận hành
9 Lối ra của bộ giải điều chế điều khiển trạng thái bộ điều chế chu kỳ công suất thông qua một điện trở 32kΩ Ở điểm này một chân sẵn có trên trên một kênh cho phép người sử dụng dặt dải thông của tín hiệu của thiết bị bằng một tụ điện thêm vào
đó Bộ lọc này cải tiến độ phân giải của phép đo và chống nhiễu xuyên kênh
9 Sau khi qua bộ lọc thông thấp, tín hiệu được biến đổi thành tín hiệu điều chế chu kỳ công suất bởi trạng thái DCM Một điện trở sẽ được đặt để quyết định đến chu
kỳ của T2, ở đó T2 biến đổi trong khoảng 0.5ms đến 10ms Ở gia tốc 0g tương ứng với 50% chu kỳ công suất Tín hiệu gia tốc có thể được quyết định bởi việc đo độ rộng xung của T1 và T2 bằng bộ đếm hay bộ định thời của vi điều khiển
9 Điện áp lối ra tương tự được lưu trữ bằng bộ đệm tín hiệu từ chân XFilt và YFilt, hay thông qua tín hiệu chu kỳ công suất thông qua bộ lọc RC tạo thành tín hiệu một chiều
9 ADXL202 sẽ vận hành với điện áp cung cấp 3.0V đến 5.25V
9 T1 và T2 được biểu diễn bằng hình sau
Hình 22 2.1.2.7 Các thành phần phụ trợ
Ứng dụng chủ yếu là một tụ điện đơn 0.1µF, CDC, sẽ bỏ được nhiễu do nguồn cung cấp Tuy nhiên trong một số trường hợp thiết bị số như vi điều khiển chia sẻ giống như nguồn cung cấp, nhiễu trên nguồn có thể gây nên nhiễu trên lối ra của
Trang 29ADXL202 Điều này thường thấy như hiện tượng gợn sóng của điện áp ở chân XFilt và
YFilt Nếu thêm vào một số thiết bị cần thiết như một điện trở 100Ω hay một thanh ferit, những thiết bị này có thể được chèn vào đường cung cấp nguồn cho ADXL202 2.1.2.8 Thiết kế một số thủ tục cho ADXL202
9 Thiết kế thủ tục cho việc sử dụng ADXL202 với lối ra chu kỳ công suất và tụ lọc Một số vấn đề liên quan đến dải thông độ phân giải của tín hiệu và yêu cẩu về mặt thời gian được xem xét trong những phần sau:
9 Vdd: ADXL202 có 2 chân cung cấp nguồn 13 và 14 Hai chân này sẽ được nối trực tiếp với nhau
9 COM: chân 4 và 7, hai chân này được nối trực tiếp với nhau và chân 7 được nối tới đất
9 Vtp: Chân này liên quan đến việc kết nối của sensor
9 Tụ CDC
9 ST
9 Giải mã chu kỳ công suất: Gia tốc tỉ lệ với T1/T2
2.1.2.9 Đặt dải thông cho ADXL202 sử dụng Cx và Cy
9 Dải thông của ADXL202 có thể đặt một cách đơn giản nhờ công thức:
) , ( 3
5
Y X
9 Từ công thức trên ta có bảng sau:
Trang 30Bảng 1 2.1.2.10 Đặt DCM với RSET
9 Để thay đổi T2 ta dùng công thức
9 Từ công thức trên ta có bảng thông số sau:
2.1.2.11 Sử dụng ADXL202 để đo độ nghiêng
9 Một trong những ứng dụng phổ biến của ADXL202 là đo độ nghiêng Gia tốc
sử dụng lực trọng trường như là một véc tơ đầu vào để quyết định hướng của vật thể trong không gian
9 Gia tốc là nhạy nhất trong đo độ nghiêng khi trục nhạy của nó trực giao với lực trọng trường, i.e., song song với bề mặt của trái đất Ở hướng nhạy sẽ thay đổi độ nghiêng lớn nhất Khi gia tốc được định hướng trên trục lực trọng trường, i.e., gần với việc đọc +1 g hay –1 g của nó Khi gia tốc vuông góc với lực trọng trường, lối ra của
nó sẽ thay đổi gần như 17.5 mg trên một độ nghiêng, đặc biệt với trường hợp là 450 thì gia tốc chỉ thay đổi 12.3 mg trên độ nghiêng và độ phân giải giảm xuống
9 Sensor gia tốc ADXL202 có hai trục đo được thể hiện trên hình vẽ
Trang 31Hình 23: Trục đo của sensor 2.1.2.12 Biến đổi gia tốc thành độ nghiêng
9 Khi gia tốc được định hướng cả hai trục X và Y song song với bề mặt của trái đất sensor này có thể sử dụng hai trục để đo Roll và Pitch Một tín hiệu lối ra từ gia tốc được biến đổi thành giá trị biến thiên từ -1 g tới +1 g Góc nghiêng được tính toán bằng công thức:
9 Pitch = ASIN (Ax/1 g)
9 Roll = ASIN (Ay/1 g)
9 Để không vượt quá phạm vi tính toán có thể cho gia tốc lối ra lớn hơn ±1 g
để giảm độ rung, độ sốc hay một gia tốc khác
2.1.2.13 Đo góc quay 360o
Ta có thể đo được đầy đủ 360 o của hướng quay quanh lực trọng trường bằng cách sử dụng hai hướng gia tốc vuông góc với nhau
Hình 24: Đo góc quay 36002.1.3.Phương pháp chuẩn
Như ta đã biết lổi ra số của sensor có dạng