Thiết kế phần mềm xử lý

Một phần của tài liệu Thiết kế hệ thống chuyển đổi giọng nói sang ngôn ngữ cử chỉ ứng dụng cho người khiếm thính (Trang 40)

6. Nội dung nghiên cứu

2.2. Thiết kế phần mềm xử lý

Mơ hình chuyển đổi giọng nói sang ngơn ngữ cử chỉ được viết trên ngôn ngữ Python và chạy trên hệ điều hành Raspbian. Trong thiết kế này tín hiệu âm thanh được thu từ Micro thông qua bộ chuyển đổi âm thanh sang USB. Tín hiệu âm thanh sau đó được xử lý và chuyển thành dạng văn bản sử dụng các mơ hình nhận dạng tiếng nói như đã giới thiệu ở chương trước. Sơ đồ khối quá trình xử lý phần mềm của hệ thống được mơ tả trong hình 2.3.

Hình 2.3. Sơ đồi khối quá trình xử lý của hệ thống

Khối chuyển đổi giọng nói sang văn bản hay cịn được xem như khối nhận dạng giọng nói là cốt lõi của hệ thống. Nhận dạng giọng nói là một tác vụ phức tạp bởi giọng nói là một tín hiệu có độ biến thiên cao và phụ thuộc vào nhiều yếu tố như giới tính, tuổi tác, phong cách, tâm trạng và cả các yếu tố ảnh hưởng từ môi trường như tiếng ồn và các âm thanh khác. Như đã giới thiệu ở chương trước, hệ thống nhận dạng tiếng nói có thể sử dụng PocketSphinx, DeepSpeech, hoặc ConvNet nhằm hướng tới các thiết bị có thể hoạt động ngoại tuyến. Tuy nhiên, thiết bị được sử dụng cho mục đích chuyển đổi giọng nói sang ngơn ngữ cử chỉ hỗ trợ cho người khiếm thính ở Việt Nam nên địi hỏi hệ thống phải có khả năng nhận dạng tiếng Việt. trong các mơ hình trên chỉ có DeepSpeech có khả năng nhận dạng tiếng Việt nhưng độ chính xác kém do số lượng dữ liệu huấn luyện cho mơ hình cịn nhiều hạn chế. Trong thiết kế này nhóm nghiên cứu sử dụng dịch vụ từ Google thông qua các API. Cho đến thời điểm hiện tại các API nhận dạng giọng nói của Google (Speech-to-Text) hoạt động hiệu quả nhưng vẫn khơng phải trả phí. Do đó, nhóm nghiên cứu giả định thiết bị luôn luôn được kết nối đến mạng Internet trong xuyên suốt quá trình hoạt động.

Khối so sánh và quyết định thực hiện so sánh văn bản được chuyển đổi từ giọng nói với các văn bản được định nghĩa trước trong tập dữ liệu để quyết định ngõ ra. Trong

Chuyển đổi giọng nói sang văn bản

Giọng nói So sánh và quyết định Tạo ngơn ngữ cử chỉ Video Tập cơ sở dữ liệu các câu

31

thiết kế này, với số lượng ngôn ngữ cử chỉ khoảng 200 câu là không nhiều nên sử dụng các giải thuật so sánh chuỗi để so sánh. Với số lượng số câu không quá lớn, việc sử dụng các giải thuật so sánh chuỗi sẽ hiệu quả hơn về mặt thời gian so với sử dụng các mơ hình dựa trên máy học hoặc kỹ thuật học sâu. Tuy nhiên, khi số lượng các câu lớn, việc xem xét sử dụng các mơ hình mạng học sâu là cần thiết. Sau khi giọng nói được nhận dạng và chuyển sang văn bản, hệ thống sẽ phân loại, so sánh và đưa ra quyết định ngôn ngữ cử chỉ nào tương ứng và phù hợp với giọng nói nhận được.

Trong thiết kế này nhóm tác giả so sánh các câu nhận được với các câu được định nghĩa trước thơng qua tính khoảng cách Levenshtein [33]. Khoảng cách Levenshtein được sử dụng khá phổ biến trong so sánh sự khác biệt của 2 chuỗi. Levenshtein Distance giữa hai từ là số lần chỉnh sửa tối thiểu một ký tự (chèn, xóa hoặc thay thế) cần thiết để thay đổi một từ thành từ kia. Nó được đặt theo tên của nhà toán học Liên Xô Vladimir Levenshtein, người đã nghiên cứu kỹ thuật này vào năm 1965 [33]. Kỹ thuật Levenshtein nguyên thủy so sánh từng ký tự trong chuỗi. Phương pháp này làm cho q trình so sánh có thể mất nhiều thời gian và khơng phù hợp với ứng dụng bởi lẽ trong văn bản các từ có thể tạo nên ý nghĩa thay vì các ký tự. Phương pháp so sánh từng từ được sử dụng thay cho phép pháp so sánh từng ký tự nhằm tăng tốc độ xử lý và tăng độ chính xác cho việc so sánh. Để thực hiện so sánh trên các từ thay vì các ký tự, các câu cần so sánh được chia thành các từ và lưu vào các ma trận rồi ám dụng kỹ thuật gốc lên các ma trận này.

Khối cuối cùng trong hệ thống là tạo ra ngôn ngữ cử chỉ. Ngôn ngữ cử chỉ được tạo ra thông qua các Video được quy sẵn tương ứng cho mỗi câu. Các video sau đó được hiển thị trên màn hình.

32

Hình 2.4. Lưu đồ chương trình chính

Chương trình được viết bằng ngơn ngữ Python và một số thư viện hỗ trợ q trình đọc tín hiệu âm thanh từ Micro phone, thực hiện một số tiền xử lý tín hiệu. Bộ xử lý tín hiệu âm thanh hỗ trợ khử các nhiễu môi trường. Việc khử nhiễu môi trường dựa vào mức biên độ thu được trong lúc khơng có tiếng nói. Các mức năng lượng tại thời điểm khơng có tiếng nói được xem như mức nhiễu của mơi trường. Khi phát hiện tiếng nói, hệ thống thu âm cho đến khi phát hiện người nói chấm dứt câu thơng qua việc xác định mức năng lượng thu được tại micro. Tín hiệu âm thanh sau đó được loai bỏ nhiễu mơi trường đã được xác định trước đó. Tín hiệu âm thanh sau đó được đựa vào các khối xử lý, rút trích đặt trung và nhận dạng, chuyển giọng nói thành văn bản và đưa đến khối so sánh và quyết định. Tại khối so sánh, hệ thống đo mức độ giống nhau giữa văn bản nhận dạng được từ giọng nói và các văn bản được định nghĩa trước trong tập cơ sở dữ liệu. Hệ thống lựa chọn văn bản nếu như 2 chuỗi trùng khớp hơn 80%. Ngôn ngữ cử chỉ tương ứng cho văn bản nhận được lựa chọn. Ngơn ngữ cử chỉ này sau đó được đưa đến khối tạo ra ngơn ngữ cử chỉ bằng hình ảnh. Ngơn ngữ cử chỉ được tạo ra đơn giản thông qua việc khởi chiếu một video đã được ghi và lưu trữ trên hệ thống.

Bắt đầu Khởi tạo Micro, bộ

khử nhiễu môi trường Kết thúc Nhận dạng giọng nói và chuyển thành văn bản So sánh dữ liệu nhận được và đưa ra quyết

định

Xuất ngôn ngữ cử chỉ

33

Chương 3

KẾT QUẢ NGHIÊN CỨU VÀ ỨNG DỤNG

3.1. Kết quả thực hiện mơ hình

Hệ thống chuyển đổi giọng nói sang ngơn ngữ cử chỉ được thực hiện bằng mơ hình được minh họa trong hình 3.1. Hệ thống được đóng hộp bảo vệ, sử dụng pin Lithium với dung lượng 4000mAh cho phép hệ thống hoạt động liên tục trong 4 giờ.

Hình 3.1. Mơ hình hệ thống chuyển đổi giọng nói sang ngơn ngữ cử chỉ.

Hệ thống sử dụng LCD 7 inch làm giao tiếp và hiển thị ngôn ngữ cử chỉ. Ngôn ngữ cử chỉ được biểu diễn dưới dạng các video được ghi sẵn. Khi nhận dạng được giọng nói, hệ thống sẽ tìm kiếm, so sánh và đưa ra kết quả thông qua video mô tả cho ngôn ngữ cử chỉ như được mình họa trong hình 3.2

34

Hình 3.2. Biểu diễn ngơn ngữ cử chỉ tương ứng với giọng nói nhận được từ microphone Hệ thống có khả năng nhận dạng và đưa ra ngơn ngữ cử chỉ cho 200 câu khác nhau. Mơ hình hiện tại nhóm nghiên cứu chỉ dừng lại ở việc thu âm 200 ngôn ngữ cử chỉ và lưu vào hệ thống. Mỗi video cho ngơn ngữ cử chỉ có độ dài khác nhau tùy theo từng nội dung. Các video có độ dài trong khoảng từ 5 giây đến 10 giây, một số cử chỉ phức tạp thì có thể có độ dài lớn hơn.

3.2. Đánh giá tốc độ đáp ứng của hệ thống

Với mục tiêu thiết kế ban đầu của hệ thống là phải mang tính di động, tiết kiệm chi phí và năng lượng, hệ thống chuyển đổi giọng nói sang ngơn ngữ cử chỉ được triển khai trên hệ thống nhúng Raspberry Pi. Để tiết kiệm thời gian xử lý cũng như tài nguyên của hệ thống, khối xử lý được sử dụng đơn giản thơng qua việc tính khoảng cách Levenshtein của chuỗi chuyển đổi được và chuỗi định nghĩa trước để đưa ra quyết định. Trong các hệ thống tương tự, khối xử lý được thực hiện bằng xử lý ngôn ngữ tự nhiên hoặc kỹ thuật mạng học sâu. Tuy nhiên, kỹ thuật mạng học sâu và kỹ thuật xử lý ngôn ngữ tự nhiên dựa trên các mạng nơ-ron nhân tạo nhiều lớp có số lượng tham số rất lớn và số lượng các phép tính nhiều dẫn đến các hệ thống này chỉ phát huy hiệu quả khi thực thi trên các phần cứng cấu hình mạnh. Trong thiết kế này nhóm nghiên cứu sử dụng hệ thống nhúng cấu hình thấp cho các ứng dụng di động, tiết kiệm năng lượng và giá thành thấp. Đối với số lượng cơ sở dữ liệu ít, nhóm so sánh phương pháp đưa ra quyết định dựa trên tính khoảng cách Levenshtein với phương pháp sử dụng mạng nơ-ron học sâu. Trong so sánh này nhóm thiết kế một mạng nơ-ron tích chập (Convolutional neural network) để nhận ngõ vào văn bản chuyển đổi được từ giọng nói và đưa ra các ngõ ra quyết định. Mạng tích chập thực hiện tích chập 1 chiều (1-D convolution). Thời gian đáp ứng được đo khi sử dụng 2 phương pháp. Trong phép đo này, nhóm thực hiện nói các câu có độ dài khác nhau và lặp

35

lại để tính giá trị trung bình. Mỗi lần thứ nhóm thực hiện nói 10 câu và thực hiện phép thử 5 lần. Kết quả so sánh được liệt kê trong bảng 3.1

Bảng 3. 1. So sánh thời gian xử lý của phương phép tính khoảng cách Levenshtein và phương pháp dùng mạng nơ-ron học sâu

Số lần thử Thời gian đáp ứng Levenshtein Distance (giây) Deep learning (mạng CNN) (giây) 1 0.00110 0.50360 2 0.00199 0.50503 3 0.00320 0.51035 4 0.00499 0.51424 5 0.00542 0.522202

Từ kết quả đo được trong bảng 3.1 cho thấy, phương pháp dùng mạng nơ-ron học sâu tốn nhiều thời gian hơn so với phương pháp tính khoảng cách Levenshtein. Phương pháp dùng mạng nơ-ron học sâu chỉ phát huy hiệu quả khi tập dữ liệu lớn và biến đổi nhiều, đồng thời thực thi trên các máy tính có cấu hình mạnh. Trong thiết kế này số lượng dữ liệu khơng nhiều, đồng thời phần cứng có cấu hình thấp và tiết kiệm năng lượng nên phương pháp sử dụng tính khoảng cách Levenshtein phát huy được tính hiệu quả.

3.3. Đánh giá độ chính xác của hệ thống

Độ chính xác của hệ thống phụ thuộc vào độ chính xác của khối nhận dạng giọng nói. Độ chính xác của hệ thống nhận dạng giọng nói phụ thuộc rất nhiều vào các yếu tố như mơi trường, khoảng cách từ người nói đến Microphone, âm lượng người nói. Mơđun chuyển đổi từ giọng nói sang văn bản của Google có độ chính xác rất cao và đã được áp dụng vào rất nhiều ứng dụng thực tế. Nếu như khoảng cách nói đủ gần để đảm bảo âm lượng thu được từ microphone và các câu khơng q phức tạp thì hệ thống nhận dạng hầu như là 100%. Do đó, nhóm thực hiện đề tài khơng đi đánh giá độ chính xác của hệ thống.

36

Chương 5

KẾT LUẬN VÀ KIẾN NGHỊ

5.1. Kết quả nghiên cứu

Các kết quả nghiên cứu đã đạt được phù hợp với mục tiêu nghiên cứu ban đầu đặt ra là thiết kế hệ thống chuyển đổi từ giọng nói sang ngơn ngữ cử chỉ. Hệ thống được thiết kế nhỏ gọn, màn hình vưa đủ nhìn trong khoảng cách từ 3m trở lại ở điều kiện khơng q chói nắng. Hệ thống tiêu thụ năng lượng thấp và có khả năng hoạt động liên tục trong 4 giờ. Hệ thống chuyển đổi giọng nói sang ngơn ngữ cử chỉ đáp ứng được mục đích chuyển đổi từ giọng nói sang ngơn ngữ cử chỉ hỗ trợ cho người khiếm thính.

5.2. Kiến nghị và định hướng nghiên cứu

- Kết quả nghiên cứu có thể sử dụng để làm tài liệu tham khảo cũng như nghiên cứu cho sinh viên và học viên cao học

- Kết quả nghiên cứu là bước đầu cho các nghiên cứu về các thiết bị hỗ trợ người khuyết tật.

- Nghiên cứu chỉ dừng lại ở việc chuyển đổi từ giọng nói sang ngơn ngữ cử chỉ. Các nghiên cứu tiếp theo có thể thiết kế chuyển đổi 2 chiều, từ giọng nói sang ngơn ngữ cử chỉ và từ ngơn ngữ cử chỉ sang giọng nói. Hơn nữa, hệ thống hiện tại sử dụng nhận dạng giọng nói thơng qua các API và địi hỏi hệ thống phải được kết nối internet. Các nghiên cứu tiếp theo cần triển khai các mơ hình nhận dạng giọng nói có khả năng hoạt động không cần kết nối internet.

37

TÀI LIỆU THAM KHẢO

[1]. Vi N.T. Truong, Chuan-Kai Yang, and Quoc-Viet tran, “A translator of American Sign language to text and speech”, 2016 IEEE 5th Global Conference on Consumer Electronics, 2016

[2]. S. Rajaganapathy, B. Aravind, B. Keerthana, and M. Sivagami, “Conversation of Sign Language to Speech with Human Gestures,” Procedia Computer Science pp. 10-15, 2015. [3]. Tan Tian Swee, Sh-Hussain Salleh, A.K. Ariff, Chee-Ming Ting, Siew Kean Seng, “Malay Sign Language Gesture Recognition System,” International Conference on Intelligent and Advanced Systems, 2007

[4]. M. K. Viblis và K. J. Kyriakopoulos, “Gesture recognition: the gesture segmentation problem”, Journal of Intelligent and Robotic Systems 28: 151–158, 2000.

[5]. B. Gallo, R. San-Segundo, J.M. Lucas, R. Barra, L.F. D’Haro, F. Fernández “Speech into Sign Language Statistical Translation System for Deaf People,” IEEE Latin America Transactions, vol. 7, no. 3, july 2009.

[6]. K. Rekha and B. Latha “Mobile translation system from speech language to hand motion language,” 2014 International Conference on Intelligent Computing Applications, pp. 411- 415, 2014

[7] Nhữ Bảo Vũ, “Xây dựng mơ hình đối thoại cho tiếng việt trên miền mở dựa vào phương pháp học chuỗi liên tiếp”, LVThS - Đại Học Quốc Gia Hà Nội, Trường Đại Học Công Nghệ, 2016

[8]. Trần Quyết Cường, “Nghiên cứu áp dụng kỹ thuật học sâu cho bài toán nhận dạng ký tự Latinh”, LVThS – Đại học Hàng hải Việt Nam, 2016.

[9]. M.A.Anusuya, S.K.Katti, “Speech Recognition by Machine: A Review”, International Journal of Computer Science and Information Security, Vol. 6, No. 3, 2009 [10]. Indurkhya, Handbook of Natural Language Processing, Chapman and Hall/CRC, 2010

[11]. Baum, L. An inequality and associated maximization technique occurring in statistical estimation

38

[12]. Baker, J. Stochastic modeling for automatic speech recognition, in D. R. Reddy, (ed.), Speech Recognition, Academic Press, New York, (1975).

[13]. Jelinek, F. Continuous speech recognition by statistical methods, Proceedings of the IEEE, 64(4), 532–557, (1976).

[14]. Deng, L. A stochastic model of speech incorporating hierarchical nonstationarity, IEEE Transactions on Speech and Audio Processing, 1(4), 471–475. (1993).

[15]. Deng, L., M. Aksmanovic, D. Sun, and J. Wu, Speech recognition using hidden Markov models with polynomial regression functions as nonstationary states, IEEE Transactions on Speech and Audio Processing, 2, 507–520, (1994).

[16]. Deng, L., D. Yu, and A. Acero. Structured speech modeling, IEEE Transactions on Audio, Speech and Language Processing (Special Issue on Rich Transcription), 14(5), 1492–1504, (2006).

[17]. Lippman, R. An introduction to computing with neural nets, IEEE ASSP Magazine, 4(2), 4–22. (1987).

[18]. Gao Y. and J. Kuo. Maximum entropy direct models for speech recognition, IEEE Transactions on Speech and Audio Processing, 14(3), 873–881. (2006)

[19]. Gunawardana, A. and W. Byrne. Discriminative speaker adaptation with conditional maximum likelihood linear regression, Proceedings of the EUROSPEECH, Aalborg, Denmark, (2001)

[20]. Bahl, L., P. Brown, P. de Souza, and R. Mercer. Maximum mutual information estimation of hidden Markov model parameters for speech recognition, in Proceedings of the IEEE International Conference on Acoustics, Speech, and Signal Processing, pp. 49– 52, Tokyo, Japan. (1986)

[21]. Povey, B., Kingsbury, L. Mangu, G. Saon, H. Soltau, and G. Zweig. FMPE: Discriminatively trained features for speech recognition, in Proceedings of the International Conference on Acoustics, Speech,

and Signal Processing, Philadelphia, PA. (2005)

[22]. He, X., L. Deng, C. Wu. Discriminative learning in sequential pattern recognition, IEEE Signal Processing Magazine, 25(5), 14–36. (2008)

[23]. K. Lee, H. -. Hon and R. Reddy, "An overview of the SPHINX speech recognition system," in IEEE Transactions on Acoustics, Speech, and Signal Processing, vol. 38, no. 1, pp. 35-45, Jan. 1990, doi: 10.1109/29.45616.

39

[24]. J. D. Markel, and A. H. Gray, Linear Prediction of Speech. Springer-Verlag, 1976. [25]. [. E. Baum, “An inequality and associated maximization technique in ststistical estimation of probabilistic functions of Markov processes.” Inequalities, vol. 3 , pp, 1- 8,1972

[26]. J. K. Baker, “The DRAGON system-An overview,” IEEE Trans. Acoust., Speech, Signal Processing. vol. ASSP-23, pp. 24-29, Feb. 1975],

[27]. F. Jelinek, “Continuous speech recognition by statistical methods,” Proc. IEEE, vol. 64, pp, 532-556. Apr. 1976.].

[28]. W. M. Fisher, V. Zue, J . Bernstein, and D. Pallett, “An acousticphonetic data base,”

Một phần của tài liệu Thiết kế hệ thống chuyển đổi giọng nói sang ngôn ngữ cử chỉ ứng dụng cho người khiếm thính (Trang 40)

Tải bản đầy đủ (PDF)

(66 trang)