1. Trang chủ
  2. » Luận Văn - Báo Cáo

Thuyết minh phim tự động sử dụng tổng hợp tiếng nói tiếng việt

75 24 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 75
Dung lượng 4,75 MB

Nội dung

NGUYỄN VĂN NAM BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI NGUYỄN VĂN NAM LUẬN VĂN THẠC SĨ KỸ THUẬT PHẦN MỀN THUYẾT MINH PHIM TỰ ĐỘNG SỬ DỤNG TỔNG HỢP TIẾNG NÓI TIẾNG VIỆT LUẬN VĂN THẠC SĨ KỸ THUẬT CHUYÊN NGÀNH KỸ THUẬT PHẦN MỀM KHOÁ – 2016B Hà Nội – 2019 BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI NGUYỄN VĂN NAM THUYẾT MINH PHIM TỰ ĐỘNG SỬ DỤNG TỔNG HỢP TIẾNG NÓI TIẾNG VIỆT Chuyên ngành : KỸ THUẬT PHẦN MỀM LUẬN VĂN THẠC SĨ KỸ THUẬT NGƯỜI HƯỚNG DẪN: TS NGUYỄN THỊ THU TRANG Hà Nội – Năm 2019 LỜI CẢM ƠN Để có ngày hồn thành luận văn tốt nghiệp này, lời em xin chân thành cảm ơn thầy, cô cán giảng dạy trường Đại học Bách Khoa Hà Nội, thầy cô viện Công nghệ thông tin & Truyền thông đặc biệt thầy cô môn Công nghệ phần mềm tận tậm dạy em suốt thời gian học vừa qua Em xin trận trọng gửi lời cảm ơn đến Tiến sĩ Nguyễn Thị Thu Trang, Bộ môn Công nghệ phần mềm, Viện CNTT&TT, Trường Đại học Bách Khoa Hà Nội Cảm ơn cô thời gian em thực luận văn nhiệt tình hướng dẫn, bảo kiến thức định hướng cho em thực đề tài Em xin gởi lời cảm ơn chân thành đến bạn học lớp 16BKTPM đồng hành giúp đỡ sẻ chia tơi khó khăn q trình học tập làm luận văn Cuối cùng, em xin cảm ơn gia đình, người ln động viên giúp đỡ em mặt tinh thần, để em có động lực vững tin đạt đến kết cuối Hà Nội, ngày 24 tháng 11 năm 2019 Tác giả LVThS Nguyễn Văn Nam LỜI CAM ĐOAN Tôi - Nguyễn Văn Nam - cam kết luận văn cơng trình nghiên cứu thân tơi hướng dẫn TS Nguyễn Thị Thu Trang Các kết nêu luận văn trung thực, chép tồn văn cơng trình khác Hà Nội, ngày 24 tháng 11 năm 2019 Tác giả LVThS Nguyễn Văn Nam MỤC LỤC LỜI CAM ĐOAN MỤC LỤC DANH MỤC CÁC TỪ VIẾT TẮT VÀ THUẬT NGỮ DANH MỤC HÌNH DANH MỤC BẢNG CHƯƠNG 1: GIỚI THIỆU ĐỀ TÀI 10 1.1 Đặt vấn đề 10 1.2 Mục tiêu phạm vi đề tài 11 1.3 Bố cục luận văn 12 CHƯƠNG 2: KHẢO SÁT VÀ PHÂN TÍCH YÊU CẦU 13 2.1 Khảo sát trạng 13 2.2 Tổng quan dịch vụ ứng dụng 14 2.2.1 Dịch vụ quản lý xác thực người dùng 16 2.2.2 Dịch vụ quản lý tổng hợp thuyết minh 17 2.2.3 Dịch vụ quản lý phim thuyết minh 17 2.3 Đặc tả use case 18 2.3.1 Đặc tả use case tổng hợp thuyết minh 18 2.3.2 Đặc tả use case cấu hình phụ đề 19 2.3.3 Đặc tả use case xem phim 20 2.4 Tổng kết 20 CHƯƠNG 3: GIẢI PHÁP THUYẾT MINH PHIM TỰ ĐỘNG 21 3.1 Thiết kế kiến trúc 21 3.1.1 Kiến trúc tổng quan 21 3.1.2 Kiến trúc front-end 22 3.1.3 Kiến trúc back-end 24 3.2 Giải pháp tổng hợp thuyết minh phim 25 3.2.1 Giới thiệu MaryTTS định dạng SSML 25 3.2.2 Quá trình tổng hợp file âm 26 3.3 Cách thức trình chiếu phim thuyết minh tự động 29 3.3.1 Phương thức trình chiếu phim thuyết minh 29 3.3.2 Cơ chế đồng phim thuyết minh 31 3.4 Kết chương 32 CHƯƠNG 4: PHÁT TRIỂN ỨNG DỤNG 33 4.1 Công nghệ sử dụng 33 4.1.1 NodeJS 33 4.1.2 Bảo mật API với Json web token – JWT 35 4.1.3 Elastic Search 36 4.1.4 ReactJS 36 4.1.5 Android platform 41 4.2 Thư viện API 45 4.2.1 MongooseJS 45 4.2.2 Redux 45 4.2.3 ObjectBox 46 4.2.4 Glide 48 4.2.5 Volley 48 4.3 Phát triển ứng dụng 48 4.3.1 Thư viện công cụ sử dụng 48 4.3.2 Kiến trúc ứng dụng 50 4.3.3 Thiết kế chi tiết 51 4.3.4 Kết đạt 60 4.3.3 Minh họa chức 64 4.4 Thử nghiệm 68 4.4.1 Dữ liệu thử nghiệm 68 4.4.2 Kết thử nghiệm 68 4.5 Đánh giá 69 4.5.1 Ưu điểm 69 4.5.2 Nhược điểm 69 4.6 Kết chương 70 KẾT LUẬN 71 DANH MỤC CÁC TÀI LIỆU THAM KHẢO 72 DANH MỤC CÁC TỪ VIẾT TẮT VÀ THUẬT NGỮ API EUD RDBMS SQL HTML URI JSON Application Programming Interface Giao diện lập trình ứng dụng End-User Development Phát triển ứng dụng người dùng cuối Relational Database Management System Hệ quản trị sỡ liệu quan hệ Structured Query Language Ngôn ngữ truy vấn mang tính cấu trúc, thiết kế để quản lý liệu RDBMS HyperText Markup Language Ngôn ngữ đánh dấu siêu văn Uniform Resource Identifier Một chuỗi ký tự dùng để xác định tài nguyên JavaScript Object Notation Một kiểu định dạng liệu ngôn ngữ JavaScript REST Representational State Transfer Một chuẩn thiết kế phần mềm, quy định cách mà client server tương tác với CNTT Công nghệ thông tin TTS Hệ thống tổng hợp tiếng nói LVTN Luận văn tốt nghiệp MVVM Model – View – ViewModel DANH MỤC HÌNH Hình Tổng quan chức 14 Hình Biểu đồ use case tổng quan 15 Hình Biểu đồ use case quản lý xác thực người dùng 16 Hình Biểu đồ use case cho dịch vụ quản lý tổng hợp thuyết minh 17 Hình Biểu đồ use case dịch vụ quản lý phim thuyết minh 18 Hình Kiến trúc ứng dụng thuyết minh phim 21 Hình Kiến trúc mobile-front-end 22 Hình Kiến trúc web-front-end 23 Hình Kiến trúc microservice 24 Hình 10 Quá trình tạo file âm với đầu vào file srt 27 Hình 11 Trình chiếu phim thuyết minh tự động 29 Hình 12 Cấu trúc HTML DOM [8] 37 Hình 13 Server side rendering [9] 39 Hình 14 Client side rendering [9] 41 Hình 15 Các thành phần Android 42 Hình 16 Quản lý liệu có redux khơng có redux [16] 46 Hình 17 Kiến trúc mobile front-end 50 Hình 18 Kiến trúc back-end 51 Hình 19 Kiến trúc dịch vụ quản lý xác thực người dùng 52 Hình 20 Các thành phần dịch vụ tổng hợp thuyết minh 53 Hình 21 Kiến trúc dịch vụ quản lý phim thuyết minh 54 Hình 22 Thiết kế sở liệu Database 56 Hình 23 Kiến trúc ứng dụng Android 57 Hình 24 Thiết kế giao diện ứng dụng Android front-end 59 Hình 25 Cấu trúc gói xây dựng dịch vụ back-end server 61 Hình 26 Cấu trúc gói ứng dụng mobile front-end 62 Hình 27 Màn hình danh sách phim thuyết minh 64 Hình 28 Màn hình xem phim 65 Hình 29 Màn hình thông tin cá nhân 66 Hình 30 Màn hình quản lý tổng hợp thuyết minh 67 Người hùng tia chớp Phần - Tập 20 L Storm / Biệt đội chống tham nhũng Mojin: The Worm Valley / Ma Thổi Đèn: Trùng Cốc Vân Nam Hunter Killer/Mật Vụ Giải Cứu Rampant / Dạ Quỷ Seven Samurai/Bẩy Võ Sĩ Samurai 42 phút 42 phút 20 phút 90 phút 90 phút 40 phút 110 phút 110 phút 58 phút 122 phút 122 phút 65 phút 129 phút 202 phút 129 phút 202 phút 66 phút 103 phút Như trình bày trên, dịch vụ tổng hợp thuyết minh hoạt động dự việc phân tách câu hội thoại tệp phụ đề gửi đoạn hội thoại đến server TTS, sau ghép đoạn âm thu Từ thấy kết tổng hợp phụ thuộc vào số lần request tổng hợp âm mà service không thử lại Kết bảng 13 cho thấy dịch vụ tổng hợp thuyết minh phim cho kết tệp âm tổng hợp khớp với tệp phụ đề, dịch vụ hoạt động ổn định với tốc độ tổng hợp trung bình phút xử lý cho phút phụ đề 4.5 Đánh giá 4.5.1 Ưu điểm • Ứng dụng back-end phân tách dịch vụ riêng biệt theo mơ hình microservice nên thành phần ứng dụng dễ bảo trì, phát triển • Ứng dụng mobile front end phát triển chức cốt lõi, tổ chức ứng dụng thành thành phần độc lập, dễ tái sử dụng • Giải tốn cốt lõi hệ thống 4.5.2 Nhược điểm • Ứng dụng dừng lại mức thử nghiệm, chức nghèo nàn, cần phát triển thêm chức để tăng trải nghiệm người dùng • Tính bảo mật chưa cao • Chưa thử nghiệm nhân rộng khơng có đủ sở vật chất 69 4.6 Kết chương Chương trình bày kiến trúc microservice back-end ứng dụng, kiến trúc dịch vụ ứng dụng, mô tả tương tác lớp với dịch vụ Phần mobile front-end vào trình bày chi tiết kiến trúc ứng dụng, thành phần tương tác chúng Từ thiết kế chi tiết, kết hợp với công nghệ, thư viện cơng cụ lập trình để tạo sản phẩm sau back-end server mobile client Cuối luận văn vào trình bày thử nghiệm đánh giá ứng dụng đạt 70 KẾT LUẬN Như em trình bày ứng dụng thuyết minh phim tự động sử dụng tổng hợp tiếng nói Tiếng Việt Về mặt kỹ thuật luận văn tiếp cận sử dụng ngôn ngữ khác Java, Nodejs để xây dựng dịch vụ, dịch vụ giao tiếp với sử dụng Restful giao thức HTTP đơn giản mà ngơn ngữ lập trình thông dụng hỗ trợ Với việc sử dụng giao diện API cho dịch vụ, việc thay modules dễ dàng có modules cần nâng cấp, thay đổi loại bỏ lý chức thay đổi hay công nghệ lạc hậu Các dịch vụ xây dựng định hướng phát triển riêng biệt không phụ thuộc chức đảm bảo liên quan chức đáp ứng yêu cầu quản lý Các định hướng luận văn Kiểm sốt lỗi, lỗ hổng phát sinh phần mềm, tiến hành chạy ổn định ứng dụng môi trường người dùng thực tế Thêm liệu cho sở liệu phim có thuyết minh với nhiều giọng đa dạng Kiểm sốt chặt chẽ vai trò người dùng thuyết minh người dùng tạo ra, hướng tới giới hạn số lượng tệp thuyết minh người dùng bình thường phép tạo Xây dựng chức thống kê báo cáo tốt giúp người dùng xem tổng quan phim thuyết minh tạo Phát triển chức thông báo phát sinh tương tác người dùng với người dùng người dùng với phim Do thời gian thực luận văn không nhiều kiến thức cá nhân cịn nhiều hạn chế nên luận văn khơng thể tránh khỏi thiếu sót Em mong ý kiến đóng góp thầy bạn đọc để luận văn hoàn thiện Xin chân thành cảm ơn! 71 DANH MỤC CÁC TÀI LIỆU THAM KHẢO [1] N js Foundation, “Node.js,” Node.js [Online] Available: https://nodejs.org/en/ [Accessed: 24-May-2019] [2] “Express - Node.js web application framework.” [Online] Available: https://expressjs.com/ [Accessed: 24-May-2019] [3] “REST API Tutorial.” [Online] Available: https://www.restapitutorial.com/ [Accessed: 24-May-2019] [4] “The most popular database for modern apps | MongoDB.” [Online] Available: https://www.mongodb.com/ [Accessed: 24-May-2019] [5] “JSON Web Token” [Online] Available: https://jwt.io/introduction/ [Accessed: 24-May-2019] [6] “Elasticsearch documentation” [Online] Available: https://www.elastic.co/guide/index.html [Accessed: 24-May-2019] [7] “React – A JavaScript library for building user interfaces.” [Online] Available: https://reactjs.org/ [Accessed: 20-May-2019] [8] “JavaScript HTML DOM.” [Online] Available: https://www.w3schools.com/js/js_htmldom.asp [Accessed: 24-May-2019] [9] “So sánh Server Side Rendering Client Side Rendering React,” Viblo [Online] Available: https://viblo.asia/p/so-sanh-server-side-rendering-vaclientside-rendering-trong-react-V3m5WBrylO7 [Accessed: 24-May-2019] [10] “Next.js - The React Framework.” [Online] Available: https://nextjs.org [Accessed: 24-May-2019] [11] “Webpack,” webpack [Online] Available: https://webpack.js.org/ [Accessed: 24-May-2019] [12] “Babel · The compiler for next generation JavaScript.” [Online] Available: https://babeljs.io/index.html [Accessed: 24-May-2019] 72 [13] “Android Platform” [Online] Available: https://developer.android.com/docs [Accessed: 25-May-2019] [14] “Mongoose ODM v5.5.11.” [Online] Available: https://mongoosejs.com/ [Accessed: 24-May-2019] [15] “Redux · A Predictable State Container for JS Apps.” [Online] Available: https://redux.js.org/ [Accessed: 24-May-2019] [16] “Flux | Application Architecture for Building User Interfaces.” [Online] Available: http://facebook.github.io/flux/index.html [Accessed: 24-May-2019] [17] “ObjectBox - Edge Database for Mobile and IoT” [Online] Available: https://objectbox.io/ [Accessed: 24-May-2019] [18] “An image loading and caching library” [Online] Available: https://github.com/bumptech/glide [Accessed: 24-May-2019] [19] “Volley overview” [Online] Available: https://developer.android.com/training/volley [Accessed: 24-May-2019] 73 ... pháp tổng hợp thuyết minh phim Như đề cập trước đó, ứng dụng sử dụng hệ thống tổng hợp tiếng nói Tiếng Việt sẵn có, phần vào tìm hiểu hệ thống tổng hợp tiếng nói cách sử dụng hệ thống để tạo thuyết. .. quen với giọng thuyết minh phim Từ điều nêu em thấy cần đưa ứng dụng thuyết minh phim tự động, giúp ta giảm thiểu chi phí để tạo phim thuyết minh Ứng dụng thuyết minh phim tự động ứng dụng đưa để... lý tổng hợp thuyết minh Dịch vụ quản lý tổng hợp thuyết minh cho phép lưu trữ quản lý phụ đề phim muốn tổng hợp thuyết minh Hình mơ tả tương tác người dùng dịch vụ quản lý tổng hợp thuyết minh

Ngày đăng: 20/03/2021, 11:04

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[14] “Mongoose ODM v5.5.11.” [Online]. Available: https://mongoosejs.com/. [Accessed: 24-May-2019] Sách, tạp chí
Tiêu đề: Mongoose ODM v5.5.11
[15] “Redux ã A Predictable State Container for JS Apps.” [Online]. Available: https://redux.js.org/. [Accessed: 24-May-2019] Sách, tạp chí
Tiêu đề: Redux ã A Predictable State Container for JS Apps
[16] “Flux | Application Architecture for Building User Interfaces.” [Online]. Available: http://facebook.github.io/flux/index.html. [Accessed: 24-May-2019] Sách, tạp chí
Tiêu đề: Flux | Application Architecture for Building User Interfaces
[17] “ObjectBox - Edge Database for Mobile and IoT” [Online]. Available: https://objectbox.io/. [Accessed: 24-May-2019] Sách, tạp chí
Tiêu đề: ObjectBox - Edge Database for Mobile and IoT
[18] “An image loading and caching library” [Online]. Available: https://github.com/bumptech/glide. [Accessed: 24-May-2019] Sách, tạp chí
Tiêu đề: An image loading and caching library
[19] “Volley overview” [Online]. Available: https://developer.android.com/training/volley. [Accessed: 24-May-2019] Sách, tạp chí
Tiêu đề: Volley overview

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

w