Đề tài tìm hiểu và xây dựng một dịch vụ trên hệ thống tổng đài điện thoại với cách tiếp cận mới. Sử dụng giọng nói để điều khiển, lựa chọn các chức năng, dịch vụ của tổng đài điện thoại bằng giọng nói
ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN KHOA MẠNG MÁY TÍNH VÀ TRUYỀN THÔNG KHÓA LUẬN TỐT NGHIỆP DỊCH VỤ TRA ĐIỂM TỰ ĐỘNG SỬ DỤNG NHẬN DẠNG GIỌNG NÓI TIẾNG VIỆT Giảng viên hướng dẫn: TS ĐÀM QUANG HỒNG HẢI Sinh viên thực hiện: NGUYỄN NGHĨA TUẤN MSV: 08520443 ĐẶNG TIỂU BÌNH MSV: 08520032 Lớp: MMT03 Khóa: 03 Đại học Công Nghệ Thông Tin – Khoa Mạng Máy Tính & Truyền Thông Trang Thành phố Hồ Chí Minh, tháng năm 2013 MỞ ĐẦU Nền công nghệ thông tin nước ta có bước tiến mạnh mẽ giới, VoIP công nghệ đưa vào giảng dạy trường đại học ứng dụng rộng rãi phổ biến doanh nghiệp Các hệ thống tổng đài chăm sóc khách hàng, hệ thống điện thoại VoIP liên lạc nội hoàn toàn miễn phí triển khai hầu hết doanh nghiệp Có thể nói công nghệ VoIP ngày phát triển số lượng người dùng tính ngày cải tiến Do đó, đối tượng người dùng ngày phong phú kéo theo nhu cầu ngày cao Nắm bắt nhu cầu đó, chúng em mạnh dạn tìm hiểu triển khai hệ thống VoIP sử dụng cách tiếp cận mới: điều khiển, lựa chọn tính năng, dịch vụ tổng đài “giọng nói” khóa luận tốt nghiệp Mục tiêu khóa luận: Tìm hiểu kiến thức nhận dạng giọng nói, vận dụng kiến thức tìm hiểu xây dựng hệ thống tổng đài tra điểm tự động điều khiển giọng nói - Tìm hiểu khái niệm có liên quan đến hệ nhận dạng tiếng nói để làm rõ - số yếu tố quan trọng việc sử dụng công cụ hỗ trợ Tìm hiểu phương pháp cài đặt công cụ hỗ trợ xây dựng hệ nhận dạng tiếng nói Tìm hiểu xây dựng mô hình âm học, mô hình ngôn ngữ thích hợp cho tiếng Việt Xây dựng chương trình mô phỏng, thực nghiệm, thử nghiệm mô hình với từ đưa kết luận nhận xét Ý nghĩa khóa luận: Đề tài tìm hiểu xây dựng dịch vụ hệ thống tổng đài điện thoại với cách tiếp cận Sử dụng giọng nói để điều khiển, lựa chọn chức năng, dịch vụ tổng đài điện thoại giọng nói Đây cách tiếp cận đầy thú vị, đặc biệt hỗ trợ đắc lực cho người khiếm thị Người dùng khiếm thị gặp khó khăn GVHD: TS Đàm Quang Hồng Hải SVTH: Nguyễn Nghĩa Tuấn & Đặng Tiểu Bình Đại học Công Nghệ Thông Tin – Khoa Mạng Máy Tính & Truyền Thông Trang việc thao tác bàn phím điện thoại Chính ứng dụng có tính áp dụng vào thực tế cao Mở xu hướng dịch vụ gia tăng cho người dùng GVHD: TS Đàm Quang Hồng Hải SVTH: Nguyễn Nghĩa Tuấn & Đặng Tiểu Bình Đại học Công Nghệ Thông Tin – Khoa Mạng Máy Tính & Truyền Thông Trang LỜI CẢM ƠN Lời chúng em xin gửi lời cảm ơn chân thành biết ơn đến Ban lãnh đạo trường Đại Học Công Nghệ Thông Tin nói chung thầy cô khoa Mạng Máy Tính Truyền Thông nói riêng tạo điều kiện, môi trường học tập thực hành chuyên nghiệp tận tình dìu dắt chúng em suốt năm tháng học tập trường Chúng em xin gởi lời biết ơn sâu sắc đến Tiến sĩ Đàm Quang Hồng Hải, người Thầy tận tình hướng dẫn, chia sẻ kiến thức, tài liệu giúp đỡ chúng em hướng giải đắn chúng em gặp phải khó khăn, vướng mắc trình thực khóa luận tốt nghiệp Chúng xin gửi lời cảm ơn chân thành tới ba mẹ, anh chị, bạn nhiệt tình giúp đỡ trình thu thập liệu phục vụ khóa luận tốt nghiệp Với đam mê nhiệt huyết tìm hiểu mới, trình thực khóa luận này, chúng em cố gắng hết khả mình, nhiên tránh khỏi thiếu sót Chúng em mong nhận góp ý quý báu quý thầy cô để chúng em phát triển đề tài tốt Thành phố Hồ Chí Minh, 01 tháng 03 năm 2013 Sinh viên thực Nguyễn Nghĩa Tuấn & Đặng Tiểu Bình GVHD: TS Đàm Quang Hồng Hải SVTH: Nguyễn Nghĩa Tuấn & Đặng Tiểu Bình Đại học Công Nghệ Thông Tin – Khoa Mạng Máy Tính & Truyền Thông Trang NHẬN XÉT (Của giảng viên hướng dẫn) ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… GVHD: TS Đàm Quang Hồng Hải SVTH: Nguyễn Nghĩa Tuấn & Đặng Tiểu Bình Đại học Công Nghệ Thông Tin – Khoa Mạng Máy Tính & Truyền Thông Trang NHẬN XÉT (Của giảng viên phản biện) ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… GVHD: TS Đàm Quang Hồng Hải SVTH: Nguyễn Nghĩa Tuấn & Đặng Tiểu Bình Đại học Công Nghệ Thông Tin – Khoa Mạng Máy Tính & Truyền Thông Trang Mục Lục Trang MỞ ĐẦU LỜI CẢM ƠN DANH MỤC CÁC TỪ VIẾT TẮT 11 CHƯƠNG GIỚI THIỆU ĐỀ TÀI .14 1.1 ĐỊNH NGHĨA ĐỀ TÀI .14 1.2 HƯỚNG TIẾP CẬN ĐỀ TÀI .15 CHƯƠNG CƠ SỞ LÝ THUYẾT 16 2.1 CÔNG NGHỆ VoIP 16 2.1.1 Cấu hình mạng điện thoại IP 18 2.1.2 Các thiết bị đầu cuối .19 2.1.3 Các khái niệm VOIP 20 2.1.4 Báo hiệu mạng điện thoại VOIP 21 2.1.5 Cấu trúc kết nối 23 2.1.6 Các ứng dụng VOIP 23 2.2 HỆ THỐNG TỔNG ĐÀI ASTERISK 24 2.2.1 Giới thiệu tổng đài Asterisk 24 2.2.2 Kiến trúc tổ chức Asterisk 26 2.2.3 Tìm hiểu dialplan tổng đài Asterisk 28 2.3 CƠ SỞ LÝ THUYẾT VỀ NHẬN DẠNG GIỌNG NÓI 36 2.3.1 Phân loại hệ nhận dạng giọng nói 36 2.3.2 Một số phương pháp nhận dạng giọng nói 37 2.3.3 Rút trích đặc trưng tín hiệu giọng nói 39 2.3.1.1 Giới thiệu 39 GVHD: TS Đàm Quang Hồng Hải SVTH: Nguyễn Nghĩa Tuấn & Đặng Tiểu Bình Đại học Công Nghệ Thông Tin – Khoa Mạng Máy Tính & Truyền Thông Trang 2.3.1.2 Rút trích đặc trưng .44 2.3.1.2.1 Phương pháp rút trích đặc trưng MFCC 44 2.3.3.2.1 Tìm hiểu Formant .49 2.3.4 Mô hình hợp GAUSS 51 2.3.5 Mô hình MARKOV ẩn 54 2.3.5.1 Giới thiệu chuỗi Makov 54 2.3.5.2 Mô hình Markov ẩn 55 2.3.5.3 Ba toán HMM 57 2.3.6 Mô hình MARKOV ẩn đơn 63 2.3.6.1 Đặc tả mô hình 63 2.3.6.2 Huấn luyện tham số 65 CHƯƠNG PHÂN TÍCH THIẾT KẾ HỆ THỐNG TỔNG ĐÀI .67 3.1 HUẤN LUYỆN NHẬN DẠNG GIỌNG NÓI HMM 68 3.1.1 Bước Chuẩn Bị : 68 3.1.1.1 Cài đặt HTK .68 3.1.1.2 Chuẩn bị thư mục tập tin cho trình huấn luyện 69 3.1.1.3 Các bước chuẩn bị cho trình huấn luyện 74 3.1.2 Giai Đoạn Huấn Luyện 78 3.1.2 Kết Quả Huấn Luyện 84 3.1.3 Module Nhận Dạng Giọng Nói Trong Tổng Đài Asterisk 84 3.1.4 Kết Quả Thử Nghiệm Nhận Dạng Trên Tổng Đài Asterisk .85 3.2 THIẾT KẾ CƠ SỞ DỮ LIỆU .86 3.2.1 Mô tả sơ lược hệ thống : .86 3.2.2 Yêu cầu hệ thống: .87 GVHD: TS Đàm Quang Hồng Hải SVTH: Nguyễn Nghĩa Tuấn & Đặng Tiểu Bình Đại học Công Nghệ Thông Tin – Khoa Mạng Máy Tính & Truyền Thông Trang 3.2.3 Mô hình thực thể mối kết hợp .88 3.2.4 Thuyết minh mô hình 88 3.2.5 Dữ liệu quan hệ 89 3.3 THIẾT KẾ XỬ LÝ 90 3.3.1 Cây chức ứng dụng tổng đài 90 3.3.2 Sơ đồ xử lý chức 91 3.3.3 Quy trình xử lý thông tin tổng hệ thống 92 3.4 LẬP TRÌNH AGI SCRIPT 92 3.4.1 Giới thiệu AGI script 92 3.4.2 Giới thiệu ngôn ngữ PHP .93 3.4.3 Giới thiệu thư viên lập trình phpAGI 94 3.4.4 Nguyên tắc hoạt động AGI script 94 3.4.5 Xây dựng Dialplan 95 CHƯƠNG TỔNG ĐÀI TRA ĐIỂM BẰNG GIỌNG NÓI .97 4.1 GIỚI THIỆU 97 4.2 CHỨC NĂNG CHÍNH CỦA DỊCH VỤ 98 4.3 QUY TRÌNH XỬ LÝ CHỨC NĂNG CỦA TỔNG ĐÀI 99 4.4 CÔNG NGHỆ ĐƯỢC SỬ DỤNG 100 4.5 VẬN HÀNH TỔNG ĐÀI 101 4.5.1 Quản lý tổng đài: 101 4.5.2 Quản lý liệu 101 CHƯƠNG KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 101 5.1 KẾT LUẬN .101 5.1.1 Kết đạt 102 GVHD: TS Đàm Quang Hồng Hải SVTH: Nguyễn Nghĩa Tuấn & Đặng Tiểu Bình Đại học Công Nghệ Thông Tin – Khoa Mạng Máy Tính & Truyền Thông Trang 10 5.1.2 Những hạn chế tồn 102 5.2 HƯỚNG PHÁT TRIỂN 102 GVHD: TS Đàm Quang Hồng Hải SVTH: Nguyễn Nghĩa Tuấn & Đặng Tiểu Bình Đại học Công Nghệ Thông Tin – Khoa Mạng Máy Tính & Truyền Thông Trang 92 : Người dùng tra điểm bấm số 3.3.3 Quy trình xử lý thông tin tổng hệ thống Hệ thống cung cấp chức : Tra điểm giọng nói: Người dùng gọi tới tổng đài, sau thực đọc số tiếng Việt theo yêu cầu từ tổng đài Hệ thống xử lý tiếng nói để tra cứu điểm sở liệu Nếu không tìm thấy hệ thống thông báo rõ ràng Nếu tìm thấy hệ thống phát thông tin điểm người dùng vừa nhập thông tin Tra điểm bấm số: Người dùng gọi tới tổng đài, sau thực bấm số theo yêu cầu từ tổng đài Hệ thống xử lý để tra cứu điểm sở liệu Nếu không tìm thấy hệ thống thông báo rõ ràng Nếu tìm thấy hệ thống phát thông tin điểm người dùng vừa nhập thông tin 3.4 LẬP TRÌNH AGI SCRIPT 3.4.1 Giới thiệu AGI script Mặc định, Asterisk hoạt động dựa câu lệnh với tham số đưa vào cách trực tiếp Một muốn thay đổi, bắt buộc phải chỉnh sửa trực tiếp dialplan Asterisk (file extension.conf) Do tính linh động Asterisk Trong đó, yêu cầu người dùng ngày đa dạng, phong phú nên việc phát triển tảng để hỗ trợ cho Asterisk tất yếu Vì thế, loạt thư viện phát triển kịch cho Asterisk dựa ngôn ngữ lập trình phổ biến đời Để xử lý yêu cầu từ người dùng, hệ thống cần có AGI Script (Asterisk Gateway Interface Script) AGI Script cho phép lập trình phát triển ứng dụng hệ thống Asterisk, làm gia tăng độ linh động Asterisk trước yêu cầu ngày cao người dùng Các AGI Script sử dụng để lập trình ứng dụng, làm gia tăng giá trị sử dụng cho tổng đài Asterisk Các AGI Script xây dựng dựa thư viện hỗ trợ phát triển ứng dụng Asterisk Chúng xây dựng nhiều ngôn ngữ lập trình GVHD: TS Đàm Quang Hồng Hải SVTH: Nguyễn Nghĩa Tuấn & Đặng Tiểu Bình Đại học Công Nghệ Thông Tin – Khoa Mạng Máy Tính & Truyền Thông Trang 93 như: Java (thư viện Asterisk-java), Pascal (thư viện TPasAGI), Perl (thư viện Agispeedy, Asterisk Perl AGI), PHP (thư viện phpAGI), Python (thư viện Fats, PyAstre), C (thư viện CAGI)… Thông tin AGI Asterisk thông qua giao tiếp STDOUT/STDIN STDOUT: AGI script gửi thông tin đến Asterisk STDIN: Asterisk gửi thông tin AGI script STDERR: Thông tin lỗi Để cấu hình hệ thống cách thuận lợi đem lại hiệu cao Asterisk cung cấp cho lập trình viên nhiều hàm liên quan đến AGI, khía cạnh phát triển ứng dụng AGI xem giống với ngôn ngữ script lập trình web CGI Cái khác chủ yếu chuyên biệt lập trình cấu hình hệ thống Asterisk cụ thể dialplan 3.4.2 Giới thiệu ngôn ngữ PHP PHP ( Hypertext Preprocessor) ngôn ngữ lập trình kịch hay loại mã lệnh chủ yếu dùng để phát triển ứng dụng viết cho máy chủ, mã nguồn mở, dùng cho mục đích tổng quát Nó thích hợp với web dễ dàng nhúng vào trang HTML Do tối ưu hóa cho ứng dụng web, tốc độ nhanh, nhỏ gọn, cú pháp giống C Java, dễ học thời gian xây dựng sản phẩm tương đối ngắn so với ngôn ngữ khác nên PHP nhanh chóng trở thành ngôn ngữ lập trình web phổ biến giới Ngôn ngữ, thư viện, tài liệu gốc PHP xây dựng cộng đồng có đóng góp lớn Zend Inc., công ty nhà phát triển cốt lõi PHP lập nên nhằm tạo môi trường chuyên nghiệp để đưa PHP phát triển quy mô doanh nghiệp Do cấu trúc đơn giản, nên việc nhúng ngôn ngữ PHP vào nội dung khác HTML, AGI script thuận tiện Một kịch PHP có cấu trúc sau: GVHD: TS Đàm Quang Hồng Hải SVTH: Nguyễn Nghĩa Tuấn & Đặng Tiểu Bình Đại học Công Nghệ Thông Tin – Khoa Mạng Máy Tính & Truyền Thông Trang 94 3.4.3 Giới thiệu thư viên lập trình phpAGI phpAGI thư viện cho Asterisk Gateway Interface (AGI) viết tảng ngôn ngữ lập trình PHP phpAGI viết Matthew Asham sửa chữa, nâng cấp để ngày hoàn thiện Do sử dụng ngôn ngữ PHP nên tất hàm có sẵn PHP hỗ trợ đầy đủ phpAGI Thư viện đóng gói phân phối miễn phí theo quyền GNU Public License Hiện nay, phiên phpAGI phiên 2.2 Trong Asterisk, file AGI lưu trữ thư mục /var/lib/asterisk/agi-bin 3.4.4 Nguyên tắc hoạt động AGI script AGI gọi Asterisk thông qua dialplan (file extension.conf) sử dụng lệnh AGI() Ví dụ: exten =>9999,1,Answer() exten =>9999,n,AGI(nhandang.agi) Đặc biệt, sử dụng phpAGI để lập trình cho Asterisk file thực thi AGI việc lưu dạng *.agi lưu dạng đuôi *.php Ví dụ: exten =>9999,1,Answer() exten =>9999,n,AGI(nhandang.php) GVHD: TS Đàm Quang Hồng Hải SVTH: Nguyễn Nghĩa Tuấn & Đặng Tiểu Bình Đại học Công Nghệ Thông Tin – Khoa Mạng Máy Tính & Truyền Thông Trang 95 Trong đoạn lệnh trên, người dùng gọi vào số 9999 Sau hệ thông thực thị file AGI nhandang.php Để hiển lệnh trọng nhandang.php hệ thống phải dựa vào thư viện cài đặt sẵn phpAGI 3.4.5 Xây dựng Dialplan Nội dung Dialplan thể tập tin extension.conf Ý tưởng xây dựng sau: Tổng đài có số 9999 Khi người dùng gọi đến tổng đài cách nhấn 9999, hệ thống thực thi lệnh dialplan Khi đến đoạn AGI script hệ thống thực thi AGI Nội dụng dialplan: [tongdai] exten=>7979,1,answer() exten=>7979,2,AGI(chon_so.php) exten=>7979,3,hangup() exten => 9999,1,Answer() ;nhan dang so khoa hoc exten => 9999,2,System(rm -f /nhandang/kq_julius/ketqua/*.txt) exten => 9999,n(restart),Set(sokhoahoc=${RAND(1,1000000)}) exten => 9999,n,Playback(loi_chao) exten => 9999,n,Playback(beep) exten => 9999,n,Record(/nhandang/kq_julius_wav/data/filewav${sokhoahoc}:wav,0,3,q) exten => 9999,n,GotoIf($["${RECORD_STATUS}" = "SILENCE"]?restart) GVHD: TS Đàm Quang Hồng Hải SVTH: Nguyễn Nghĩa Tuấn & Đặng Tiểu Bình Đại học Công Nghệ Thông Tin – Khoa Mạng Máy Tính & Truyền Thông Trang 96 exten => 9999,n,System(echo /nhandang/kq_julius_wav/data/filewav${sokhoahoc}.wav > /nhandang/kq_julius_wav/filewav.txt) exten => 9999,n,System(/usr/local/bin/julius -input rawfile -filelist /nhandang/kq_julius_wav/filewav.txt -C /nhandang/kq_julius_wav/julian.jconf > /nhandang/kq_julius_wav/ketqua/ketquatmp${sokhoahoc}.txt) exten => 9999,n,Wait(1) exten => 9999,n,System(awk '/sentence1:/ {print $3}' /nhandang/kq_julius_wav/ketqua/ketquatmp${sokhoahoc}.txt >> /nhandang/kq_julius_wav/ketqua/ketqua${sokhoahoc}.txt) ;gan khoa hoc vao bien khoahoc exten => 9999,n,ReadFile(khoahoc=/nhandang/kq_julius_wav/ketqua/ketqua$ {sokhoahoc}.txt)exten => 9999,n,Set(JULIUS_RECOG_KH=$ {FILTER(MOOJTHAIBABOOSNNAWMSASUBARYTASMCHISNKHOONG,$ {khoahoc})}) exten => 9999,n,NoOp(${JULIUS_RECOG_KH}) ;Playback : da nhan khoa x exten =>9999,n,System(awk '{print $1}' nhandang/kq_julius_wav/ketqua/ketqua$ {sokhoahoc}.txt > /nhandang/kq_julius_wav/ketqua/khoa.txt) exten=>9999,n,AGI(doc_khoa.php); ;nhan dang so hoc ky exten => 9999,n(restart),Set(sohocky=${RAND(1,1000000)}) exten => 9999,n,Playback(hoc_ky) exten => 9999,n,Playback(beep) GVHD: TS Đàm Quang Hồng Hải SVTH: Nguyễn Nghĩa Tuấn & Đặng Tiểu Bình Đại học Công Nghệ Thông Tin – Khoa Mạng Máy Tính & Truyền Thông Trang 97 exten => 9999,n,Record(/nhandang/kq_julius_wav/data/filewav${sohocky}:wav,0,3,q) exten => 9999,n,GotoIf($["${RECORD_STATUS}" = "SILENCE"]?restart) exten => 9999,n,System(echo /nhandang/kq_julius_wav/data/filewav${sohocky}.wav > /nhandang/kq_julius_wav/filewav.txt) exten => 9999,n,System(/usr/local/bin/julius -input rawfile -filelist /nhandang/kq_julius_wav/filewav.txt -C /nhandang/kq_julius_wav/julian.jconf > /nhandang/kq_julius_wav/ketqua/ketquatmp${sohocky}.txt) exten => 9999,n,Wait(1) exten => 9999,n,System(awk '/sentence1:/ {print $3}' /nhandang/kq_julius_wav/ketqua/ketquatmp${sohocky}.txt >> /nhandang/kq_julius_wav/ketqua/ketqua${sohocky}.txt) ;gan khoa hoc vao bien khoahocexten => 9999,n,ReadFile(hocky=/nhandang/kq_julius_wav/ketqua/ketqua${sohocky}.txt) exten => 9999,n,Set(JULIUS_RECOG_HK=$ {FILTER(MOOJTHAIBABOOSNNAWMSASUBARYTASMCHISNKHOONG,${hocky})}) exten => 9999,n,NoOp(${JULIUS_RECOG_HK}) exten =>9999,n,System(awk '{print $1}' /nhandang/kq_julius_wav/ketqua/ketqua$ {sohocky}.txt > /nhandang/kq_julius_wav/ketqua/hocky.txt) exten=> 9999,n,AGI(doc_hk.php) CHƯƠNG TỔNG ĐÀI TRA ĐIỂM BẰNG GIỌNG NÓI 4.1 GIỚI THIỆU Khóa luận tìm hiểu xây dựng hệ thống tổng đài điện thoại tảng Asterisk với cách tiếp cận Sử dụng giọng nói để tương tác với tổng đài thay phương pháp bấm phím truyền thống Đây cách tiếp cận đầy thú vị, đặc biệt GVHD: TS Đàm Quang Hồng Hải SVTH: Nguyễn Nghĩa Tuấn & Đặng Tiểu Bình Đại học Công Nghệ Thông Tin – Khoa Mạng Máy Tính & Truyền Thông Trang 98 hỗ trợ đắc lực cho người khiếm thị Người dùng khiếm thị gặp khó khăn việc thao tác bàn phím điện thoại Chính ứng dụng có tính áp dụng vào thực tế cao Ứng dụng nhóm xây dựng khóa luận dịch vụ tra điểm tự động giọng nói Tổng đài Asterisk cung cấp dịch vụ tra điểm sinh viên giọng nói Tổng đài nhận dạng sinh viên cách yêu cầu sinh viên đọc thông tin sinh viên trường để nhận diện xác sinh viên trả kết điểm sinh viên 4.2 CHỨC NĂNG CHÍNH CỦA DỊCH VỤ Khi sinh viên gọi đến hệ thống tổng đài, hệ thống phát thông điệp “Chào mừng bạn gọi tới tổng đài tra điểm tự động trường Đại Học Công Nghệ Thông tin Mời bạn nhập số khóa học bạn” lúc sinh viên đọc tên khóa học theo học trường Sau nhập vào khóa học, hệ thống xác nhận số khóa học sinh viên cách phát thông điệp yêu cầu sinh viên nhập vào bốn số cuối mã số sinh viên “Bạn nhập vào khóa x, mời bạn nhập vào số học kỳ mà bạn muốn nghe điểm” với x số khóa học sinh viên Khi hệ thống xác định sinh viên thuộc khóa vào học kỳ sinh viên muốn nghe điểm Hệ thống yêu cầu sinh viên nhập vào mã số sinh viên : “mời bạn nhập bốn số cuối mã số sinh viên, đọc số sau tiếng beep” Kết cuối hệ thống đọc tên môn học số điểm tương ứng sinh viên Sau đọc xong điểm hệ thống phát thông điệp cảm ơn chào tạm biệt Việc truy vấn giọng nói hình thức giao tiếp thân thiện người máy, đặc biệt hỗ trợ hiệu cho người khiếm thị, người lái xe truy vấn thông tin giọng nói cách dễ dàng Tuy nhiên, việc nhận dạng xác giọng nói tất người cách tuyệt đối điều khó Các hệ thống nhận dạng giọng nói tiên tiến giới đảm bảo độ xác đến 100% Độ xác hệ thống chúng em thực khóa luận GVHD: TS Đàm Quang Hồng Hải SVTH: Nguyễn Nghĩa Tuấn & Đặng Tiểu Bình Đại học Công Nghệ Thông Tin – Khoa Mạng Máy Tính & Truyền Thông Trang 99 khoảng 80% phụ thuộc vào môi trường xung quanh Chính bên cạnh việc xây dựng tổng đài truy vấn giọng nói, chúng em xây dựng song song tổng đài cung cấp dịch vụ tương tự chức bấm phím truyền thống, nhằm đảm bảo nhu cầu tra cứu điểm cho trường hợp nhận dạng Hình 4.1 Sơ đồ tổng quát dịch vụ tra điểm sinh viên 4.3 QUY TRÌNH XỬ LÝ CHỨC NĂNG CỦA TỔNG ĐÀI GVHD: TS Đàm Quang Hồng Hải SVTH: Nguyễn Nghĩa Tuấn & Đặng Tiểu Bình Đại học Công Nghệ Thông Tin – Khoa Mạng Máy Tính & Truyền Thông Trang 100 Hình 4.2 Quy trình xử lý chức tổng đài 4.4 CÔNG NGHỆ ĐƯỢC SỬ DỤNG Phần mềm mã nguồn mở Asterisk Hệ thống tổng đài xây dựng dựa phần mềm Asterisk phiên 2.6 chạy tảng Linux CentOS 6.3 Bộ nhận dạng giọng nói HTK Bộ xử lý nhận dạng giọng nói Julius Hệ quản trị sở liệu: Hệ quản trị sở liệu MySQL sử dụng để quản lý tài nguyên thông tin liên quan tới khách hàng Ngôn ngữ lập trình Các AGI Script sử dụng để lập trình ứng dụng, làm gia tăng giá trị sử dụng cho tổng đài Asterisk Các AGI Script xây dựng dựa thư viện hỗ GVHD: TS Đàm Quang Hồng Hải SVTH: Nguyễn Nghĩa Tuấn & Đặng Tiểu Bình Đại học Công Nghệ Thông Tin – Khoa Mạng Máy Tính & Truyền Thông Trang 101 trợ phát triển ứng dụng Asterisk Chúng xây dựng nhiều ngôn ngữ lập trình như: Java (thư viện Asterisk-java), Pascal (thư viện TPasAGI), Perl (thư viện Agispeedy, Asterisk Perl AGI), PHP (thư viện phpAGI), Python (thư viện Fats, PyAstre), C (thư viện CAGI), v.v… Ngôn ngữ lập trình nhóm sử dụng đề tài PHP dựa thư viện phpAGI Website quản lý viết ngôn ngữ Java , chạy server Tomcat Centos 6.3 4.5 VẬN HÀNH TỔNG ĐÀI 4.5.1 Quản lý tổng đài: Hệ thống chạy nên CentOS 6.3 Vì việc quản lý tài nguyên hệ thống thao tác trực tiếp từ người quản trị đăng nhập vào server Trên server báo gồm tổng đài chuyển mạch mền Asterisk 1.8, mysql server, Apache Tomcat số ứng dụng kèm theo 4.5.2 Quản lý liệu Việc quản lý liệu thực thông qua giao diện web Trang quản lý dành cho người quản trị Mọi truy xuất từ user khác vào trang bị từ chối Trang cho phép người quản trị quản lý liệu điểm tất sinh viên có hệ thống Trang quản lý gồm chức chính: Xem điểm sinh viên : Cho phép xuất file excel chứa điểm môn học theo tùy chọn giao diện Nhập điểm sinh viên: Việc nhập điểm thông qua import từ file excel theo mẫu đính kèm Xóa điểm sinh viên: Cho phép xóa liệu điểm môn học học kỳ CHƯƠNG KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 5.1 KẾT LUẬN GVHD: TS Đàm Quang Hồng Hải SVTH: Nguyễn Nghĩa Tuấn & Đặng Tiểu Bình Đại học Công Nghệ Thông Tin – Khoa Mạng Máy Tính & Truyền Thông Trang 102 5.1.1 Kết đạt Luận văn trình bày xây dựng tổng đài nhận dạng tiếng nói độc lập với mô hình GMM thích ứng tiếng nói theo phương pháp MLLR với codec đường truyền cho toán nhận dạng tiếng nói tiếng Việt môi trường mạng điện thoại IP Qua khóa luận này, chúng em đạt kết sau: • Hiểu kiến thức lĩnh vực nhận dạng giọng nói Xây dựng hệ nhận dạng giọng nói chữ số tiếng Việt với tỷ lệ xác 82.78% • Tiếp thu cách tổng quan chi tiết công nghệ VoIP quy trình xây dựng tổng đài mềm tảng tổng đài mềm Asterisk • Sử dụng thành thạo kỹ lập trình với AGI Script, xây dựng tổng đài Asterisk với chức linh hoạt • Xây dựng thành công tổng đài tra điểm tự động với hai cách tiếp cận: sử dụng nhận dạng giọng nói phương pháp bấm phím truyền thống Tạo tổng đài với cách tiếp cận mới, công nghệ sử dụng nhiều tương lai người giao tiếp với máy móc giọng nói 5.1.2 Những hạn chế tồn Do thời gian tìm hiểu xây dựng nhận dạng nhiều nên nhận dạng mà nhóm xây dựng đạt tỷ lệ xác chưa cao (82.78%) Chính nhóm xây dựng song song với dịch vụ tra điểm giọng nói dịch vụ sử dụng phương pháp bấm số truyền thống để phòng trường hợp người dùng không sử dụng dịch vụ nhận dạng giọng nói 5.2 HƯỚNG PHÁT TRIỂN GVHD: TS Đàm Quang Hồng Hải SVTH: Nguyễn Nghĩa Tuấn & Đặng Tiểu Bình Đại học Công Nghệ Thông Tin – Khoa Mạng Máy Tính & Truyền Thông Trang 103 Trên tảng kết đạt được, số vấn đề xem xét nghiên cứu phát triển xa nhằm nâng cao hiệu suất nhận dạng, hiệu suất tổng đài triển khai mạng viễn thông thực tế - Tìm hiển thêm phần khắc phục nhiễu tín hiệu âm truyền - tải mạng viễn thông giao thức khác Áp dụng phương pháp nhận dạng nâng cao để đạt tỉ lệ nhận dạng - cao Dữ liệu nhận dạng phải thu môi trường viễn thông với thiết bị dùng để nhận dạng Thu thập thêm liệu huấn luyện với nhiều - giọng nói nhiều vùng miền khác để hệ thống nhận dạng tốt Kết nối hệ thống với mạng internet để mở rộng khả phục vụ TÀI LIỆU THAM KHẢO Tài liệu Tiếng Việt [1] Phạm Minh Nhựt, Định danh người nói độc lập với văn mô hình thống kê , Luận văn thạc sĩ khoa học máy tính 2006, Đại học Khoa học tự nhiện TP Hồ Chí Minh [2] Lê Quốc Toàn, Nhận dạng tiếng nói tiếng Việt mạng viễn thông, Luận văn thạc sĩ khoa học máy tính 2012, Đại học Khoa học tự nhiên TP Hồ Chí Minh Tài liệu Tiếng Anh [3] L.Rabiner, B.Juang Fundamentals of speech recognition PTR Prentice Hall (Signal Pro-cessing Series), Englewood Clies NJ, 1993, ISBN 0-13-015157-2, Page 3-7 [4] Barbara Resch, Automatic Speech Recognition with HTK, Signal Processing and Speech Communication Laboratory GVHD: TS Đàm Quang Hồng Hải SVTH: Nguyễn Nghĩa Tuấn & Đặng Tiểu Bình Đại học Công Nghệ Thông Tin – Khoa Mạng Máy Tính & Truyền Thông Trang 104 [5] D Gomillion-B Dempster, Building Telephony Systems with Asterisk, Packt Publishing Ltd, UK,2006, chapter [6] Jared Smith-Jim Van Meggelen-Leif Madsen, Asterisk: The Future of Telephony, O’Reilly Media, CA 95472, 2005, pp 69-117 [7] Nir Simionovich, Asterisk Gateway Interface 1.4 and 1.6 Programing, PACKT Publishing , 2008 [8] Marc Blanchet, Asterisk Primer, Viagensie, Canada, 2007 [9] Paul Mahler, VoIP telephony with Asterisk, Signate, UK, 2004 [10] The HTK Book (for HTK Version 3.4), http://htk.eng.cam.ac.uk/doc/docs.shtml GVHD: TS Đàm Quang Hồng Hải SVTH: Nguyễn Nghĩa Tuấn & Đặng Tiểu Bình Đại học Công Nghệ Thông Tin – Khoa Mạng Máy Tính & Truyền Thông Trang 105 PHỤ LỤC A CÀI ĐẶT VÀ VẬN HÀNH SOFTPHONE Hệ thống hỗ trợ tất loại softphone chạy tảng Asterisk 3CXPhone, X-Lite, Zoiper… • Cài đặt X-Lite: - Download X-lite http://www.counterpath.com/xlite-comparison.html - Chạy file cài đặt X-Lite để tiến hành cài đặt Cấu hình X-Lite: sau cài đặt thành công X-Lite 3.0 tiến hành cấu hình cho softphone sau - Click chuột phải vào giao diện X-Lite chọn “SIP Account setting” sau chọn “Add” ta có hình cấu hình X-Lite sau: - Hình 6.1 Giao diện X-Lite Trong chọn tab Account, thiết lập thông số sau: Display name: Tên hiển thị người dùng Username: số extension cấu hình file sip.conf Password: mật số extension cấu hình file sip.conf Domain: Địa IP tổng đài Asterisk GVHD: TS Đàm Quang Hồng Hải SVTH: Nguyễn Nghĩa Tuấn & Đặng Tiểu Bình Đại học Công Nghệ Thông Tin – Khoa Mạng Máy Tính & Truyền Thông Hình 6.1 Cấu hình X-Lite GVHD: TS Đàm Quang Hồng Hải SVTH: Nguyễn Nghĩa Tuấn & Đặng Tiểu Bình Trang 106 [...]... thứ tự (priority) tiếp theo sẽ thực hiện còn ngược lại sẽ kết thúc • Record(): thu lại những tin nhắn thoại để phục vụ cho kế hoạch dialplan 2.3 CƠ SỞ LÝ THUYẾT VỀ NHẬN DẠNG GIỌNG NÓI 2.3.1 Phân loại các hệ nhận dạng giọng nói a Nhận dạng liên tục và nhận dạng rời rạc Một hệ nhận dạng tiếng nói có thể là một trong hai dạng: nhận dạng liên tục và nhận dạng từng từ Nhận dạng liên tục tức là nhận dạng tiếng. .. hình nhận dạng tiếng nói Tiếng Hình nói 1.1 Tổng quan Tổng đài voice server Quá trình chuyển đổi tiếng nói thành văn bản được thực hiện bởi bộ phận nhận T Recognition) Hệ thống nhận dạng tiếng nói tự động ASR (Automatic Speech dạng tiếng nói tự động tổng quát như hình vẽ dưới đây: Hình 1.2 Sơ đồ khối các chức năng trong hệ thống 1.2 HƯỚNG TIẾP CẬN ĐỀ TÀI - Bài toán nhận dạng tiếng nói bao gồm: nhận dạng. .. Mạng Máy Tính & Truyền Thông - Trang 15 Đề tài nghiên cứu của luận văn là xây dựng tổng đài dịch vụ tra tra điểm bằng giọng nói tiếng Việt Trong đó là bài toán giải quyết nhận dạng tiếng nói tiếng - Việt trên môi trường mạng viễn thông Tiếng nói từ đầu cuối điện thoại truyền đi trên mạng viễn thông đến tổng đài nhận dạng tiếng nói Voice Server, tại đây tiếng nói sẽ được nhận dạng và chuyển thành văn bản... nhận dạng lời nói, nhận dạng người nói, nhận dạng ngôn ngữ, nhận dạng giới tính… Trong nhận dạng lời nói lại bao gồm 2 GVHD: TS Đàm Quang Hồng Hải SVTH: Nguyễn Nghĩa Tuấn & Đặng Tiểu Bình Đại học Công Nghệ Thông Tin – Khoa Mạng Máy Tính & Truyền Thông Trang 16 loại là nhận dạng độc lập người nói và nhận dạng phụ thuộc người nói Trong luận văn này sẽ thực hiện nhận dạng độc lập người nói Hình 1.3 Các... vực về nhận dạng giọng nói - Hệ thống nhận dạng độc lập người nói là hệ thống cho phép nhận dạng được nhiều giọng nói khác nhau, nhiều cách phát âm khác nhau trên cùng một ngôn ngữ, do vậy hệ thống nhận dạng độc lập người nói cần một lượng lớn dữ liệu huấn luyện - để có thể nhận dạng được tiếng nói của nhiều người khác nhau Dựa lý thuyết nên tảng mô hình Markov ẩn hợp Gauss, thích ứng tiếng nói mã... truyền, áp dụng vào bài toán nhận dạng tiếng Việt trên môi trường mạng điện thoại IP, từ đó xây dựng hệ thống tổng đài tra điểm sinh viên bằng giọng nói với tập từ vựng 10 con số từ 0 đến 9 CHƯƠNG 2 CƠ SỞ LÝ THUYẾT 2.1 CÔNG NGHỆ VoIP Dịch vụ điện thoại IP là dịch vụ ứng dụng cao cấp cho phép truyền tải các cuộc đàm thoại sử dụng hạ tầng mạng IP Nguyên tắc VoIP gồm việc số hoá tín hiệu giọng nói, nén... trình ứng dụng cho điện thoại IP Trong khi các nhà cung cấp dịch vụ Internet cung cấp sự truy cập Internet cho khách hàng của họ thì các nhà cung cấp dịch vụ điện thoại ITSP cung cấp dịch vụ điện thoại IP cho khách hàng bằng cách sử dụng các chương trình ứng dụng dùng cho điện thoại IP Có thể nói rằng dịch vụ truy cập Internet cung cấp bởi các ISP chưa đủ để cung cấp dịch vụ điện thoại IP Người sử dụng. .. Thông Trang 17 nền IP Đến nơi nhận, các gói số liệu đựợc ghép lại, giải mã ra tín hiệu analog để phục hồi âm thanh Trong dịch vụ điện thoại IP có thể có sự tham gia của 3 loại đối tượng cung cấp dịch vụ như sau: • Nhà cung cấp Internet ISP • Nhà cung cấp dịch vụ điện thoại Internet ITSP • Nhà cung cấp dịch vụ trong mạng chuyển mạch kênh Để có thể sử dụng được dịch vụ điện thoại IP, người sử dụng cần... vụ này sẽ chuyển trực tiếp từ PC của bạn qua kết nối Internet.Khi sử dụng dịch vụ thoại và fax qua Internet, có hai vấn đề cơ bản: • Những người sử dụng dịch vụ thoại qua Internet cần có chương trình phần mềm chẳng hạn Quicknet’s Internet PhoneJACK Cấu hình này cung cấp cho người sử dụng khả năng sử dụng thoại qua Internet thay cho sử dụng điện thoại bàn truyền thống • Kết nối một gateway thoại qua... cấp dịch vụ điện thoại IP khi sử dụng điện thoại IP Họ không thể gọi hoặc nhận các cuộc đàm thoại thông qua dịch vụ điện thoại IP nếu chỉ có truy nhập vào mạng Internet Để phục vụ cho việc truyền thông giữa những người sử dụng trên các máy tính đầu cuối của mạng Internet, các công ty phần mềm đã cung cấp các trương trình ứng dụng dùng cho điện thoại IP thực hiện vai trò của ITSP Đối với người sử dụng