Caption Image - Chuyển đổi dạng lư trữ video về dạng text
TÓM TẮT
Tự động mô tả nội dung của một hình ảnh là một vấn đề cơ bản trong lĩnh vực trí tuệ nhân tạo kết
nối giữa thị giác máy tính và xử lý ngôn ngữ tự nhiên. Các tiến bộ gần đây trong lĩnh vực trí tuệ nhân
tạo đã cải thiện đáng kể hiệu suất của các mô hình. Tuy nhiên, các ứng dụng của tự động mô tả
nội dung của một hình ảnh vẫn còn chưa rõ ràng và thực tế. ưu trữ và quản lý các video là một
công việc quan trọng trong nhiều lĩnh vực, vấn đề này đặc biệt nảy sinh đối với các lĩnh vực đòi hỏi
phải lưu trữ video liên tục và truy xuất trong một lượng lớn video, camera an ninh chính là một ví dụ
điển hình trong trường hợp này. Trong bài báo này, chúng tôi nghiên cứu về cách áp dụng các
thành tựu của tự động mô tả nội dung hình ảnh vào việc quản lý, lưu trữ và trích xuất video một
cách hiệu quả hơn.
Trang 1
Trang 2
Trang 3
Trang 4
Trang 5
Trang 6
Tóm tắt nội dung tài liệu: Caption Image - Chuyển đổi dạng lư trữ video về dạng text
CAPTION IMAGE - CHUYỂN ĐỔI DẠNG LƯ TRỮ VIDEO VỀ DẠNG TEXT Lê Thị Kim Băng, Đỗ Quốc Bảo, Võ Văn Linh, Nguyễn Phước Đại, Nguyễn Văn Chinh, Nguyễn Thị Mai Phương Khoa Công nghệ Thông tin, Trường Đại học Công nghệ TP.Hồ Chí Minh GVHD: CN. Nguyễn Mạnh Hùng, ThS. Nguyễn Đô P ươ TÓM TẮT Tự động mô tả nội dung của một hình ảnh là một vấn đề cơ bản trong lĩnh vực trí tuệ nhân tạo kết nối giữa thị giác máy tính và xử lý ngôn ngữ tự nhiên. Các tiến bộ gần đây trong lĩnh vực trí tuệ nhân tạo đã cải thiện đáng kể hiệu suất của các mô hình. Tuy nhiên, các ứng dụng của tự động mô tả nội dung của một hình ảnh vẫn còn chưa rõ ràng và thực tế. ưu trữ và quản lý các video là một công việc quan trọng trong nhiều lĩnh vực, vấn đề này đặc biệt nảy sinh đối với các lĩnh vực đòi hỏi phải lưu trữ video liên tục và truy xuất trong một lượng lớn video, camera an ninh chính là một ví dụ điển hình trong trường hợp này. Trong bài báo này, chúng tôi nghiên cứu về cách áp dụng các thành tựu của tự động mô tả nội dung hình ảnh vào việc quản lý, lưu trữ và trích xuất video một cách hiệu quả hơn. Từ khóa: Image captioning, word embedding, video processing, LSTM, model inception v3. ABSTRACT Automatically describing the content of an image is a fundamental problem in artificial intelligence that connects computer vision and natural language processing. Recent progress in artificial intelligence (AI) has greatly improved the performance of models. However, the application of automatically describing the content of an image is still unclear and realistic. Storing and managing videos is an important task in many fields, especially problems for areas that require continuous video storage and retrieval in a large number of video, and security cameras are a prime example in this case. In this paper, we study how to apply the achievements of image caption generator to managing, storing and extracting videos more effectively. Keywords: Image captioning, word embedding, video processing, LSTM, model inception v3. 1 GI I THIỆU Thị giác máy tính và xử lý ngôn ngữ tự nhiên là hai lĩnh vực riêng biệt trong trí tuệ nhân tạo nhưng đã được kết hợp để tạo ra các nghiên cứu mới, tự động mô tả nội dung hình ảnh chính là một trong số đó. Các nghiên cứu mới gần đây đã mang lại những mô tả ngày càng chính xác hơn. Trong công việc lưu trữ, quản lý và truy xuất video, có hai câu hỏi được đặt ra: Làm thế nào để lưu trữ những video, phân cảnh có chứa nội dung cần lưu trữ dựa theo mục đích lưu trữ của lĩnh vực để mang lại hiệu quả trong việc lưu trữ và quản lý như tiết kiệm bộ nhớ, lưu trữ theo thể loại – nội dung 76 – đối tượng,? Làm thế nào để có thể truy xuất tới phân cảnh, thời điểm có chứa nội dung, mô tả được đưa ra một cách hiệu quả và nhanh nhất so với truy xuất thủ công, đặc biệt là trong các video có thời lượng dài? Chúng tôi đã sử dụng kết quả đạt được từ tự động mô tả nội dung hình ảnh để giải quyết hai câu hỏi trên. 2 P ƯƠN ÁN TIẾP CẬN Hình 1. Mô hình của chương trình 2.1 Model Inception V3 Mạng Inception gồm các đơn vị gọi là ‚inception cell‛ - phép tích chập 1 đầu vào với nhiều bộ lọc khác nhau rồi tổng hợp lại, theo nhiều nhánh. Tại sao lại chọn model Inception V3? – Với mỗi 1 cell, sử dụng các 1x1, 3x3, 5x5 bộ lọc để lấy ra các thuộc tính từ đầu vào. Giảm số lượng tham số của mô hình dẫn đến chi phí tính toán sẽ tiết kiệm hơn. – Inception có một đặc điểm khá hay là có thêm 2 đầu ra phụ. Nó giúp cho việc huấn luyện diễn ra nhanh hơn khi tối ưu những lớp đầu dựa vào các đầu ra phụ. Các lớp càng gần cuối càng ít được tối ưu ngay vì vậy chưa cần thiết phải tối ưu ngay. Sau một thời gian tối ưu các lớp đầu rồi mới tối ưu các lớp tiếp theo dựa vào đầu vào cuối cùng. Việc này cải thiện khả năng tính toán và tốc độ huấn luyện khá nhiều. 77 Bảng 1. So sánh giữa một số mô hình bắt đối tượng trong ảnh [11] Model Size Top-1 Accuracy Top-5 Accuracy Parameters Xception 88MB 0.790 0.945 22, 910, 480 VGG19 549MB 0.713 0.900 143, 667, 240 ResNet101 171MB 0.764 0.928 44, 707, 176 InceptionV3 92MB 0.779 0.937 23, 851, 784 InceptionResNetV2 215MB 0.803 0.953 55, 873, 763 MobileNet 16MB 0.704 0.895 4, 253, 864 2.2 Word embedding Glove -Global Vectors, là một mô hình cho biểu diễn từ phân tán. Mô hình này là một thuật toán học tập không giám sát để có được các biểu diễn vectơ cho các từ. Điều này đạt được bằng cách ánh xạ các từ vào một không gian có ý nghĩa trong đó khoảng cách giữa các từ có liên quan đến sự giống nhau về ngữ nghĩa, có thể rút ra mối quan hệ ngữ nghĩa giữa các từ trong ma trận xuất hiện. Đào tạo được thực hiện trên các số liệu thống kê về sự xuất hiện của từ từ một kho văn bản và các biểu diễn kết quả thể hiện các cấu trúc tuyến tính của không gian vectơ từ. Là mô hình hồi quy log- bilinear cho việc học từ đại diện không giám sát, nó kết hợp các tính năng của hai họ mô hình, cụ thể là nhân tố ma trận (the global matrix factorization) và phương pháp cửa sổ ngữ cảnh cục bộ (local context window methods). Mô hình GloVe được chúng tôi sử dụng trong việc embedding các từ và tạo ma trận embedding cho bảng từ vựng với mỗi từ embedding bằng một vectơ 200. 2.3 Long Short Term Memory (LSTM) 2.3.1 Mô hình Long Short Term Memory (LSTM) Kiến trúc Recurrent Neural Network (RNN) được sinh ra để giải quyết các bài toán có dữ liệu tuần tự. Tuy nhiên, RNN truyền thống khó học được vì vấn đề mất mát và bùng nổ đạo hàm [10]. Mạng LSTM được đề xuất để giải quyết vấn đề [10]. Khối LSTM mà mô hình của chúng tôi được xây dựng dựa trên LSTM với cấu trúc không có Peepholes [6]. Các ô nhớ và cổng trong một khối LSTM được định nghĩa như sau: i1 (w ix x 1 w im m 1 1 ) (1) f1 (w fx x 1 w fm m 1 1 ) (2) o1 (w ox x 1 w om m 1 1 ) (3) c1 f.c 111 i.h(wx 1 cx1 wm) cm11 (4) m1 o 1 .c 1 (5) 78 Trong đó (.) đại diện cho phép nhân phần tử, đại diện cho hàm sigmoid và h đại diện cho hàm tiếp tuyến hyperbolic [12]. Biến i1 là viết tắt của đặt cổng, f1 cho cổng quên, o1 cho cổng đầu ra của ô LSTM. c1 là trạng thái của ô nhớ và m1 là trạng thái ẩn, đó là đầu ra của khối được tạo bởi ô nhớ. Biến x1 là phần tử của chuỗi tại dấu thời gian l và w biểu thị các tham số của mô hình. 2.3.2 Tạo phụ đề với Long Short Term Memory (LSTM) Đường dẫn để tạo chú thích với RNN mô hình [1,4,5,8,9] được lấy cảm hứng từ một bộ mã hóa nguyên tắc trong dịch Neural machine [2,3,7]. Một bộ mã hóa được sử dụng để ánh xạ một chuỗi độ dài thay đổi trong ngôn ngữ vào một vector phân tán và giải mã được sử dụng để tạo một chuỗi mới trong ngôn ngữ định hướng trên vector và tạo chú thích, cụ thể là: argmax logp(sii x , ) (6) i 1:Li Khi đó xi là biểu thị một hình ảnh, si biểu thị một chuỗi các từ trong câu có độ dài Li và biểu thị 1:Li θ mô hình thông số. Để đơn giản, trong phần sau chúng ta dùng siêu ký tự i bất cứ khi nào nó rõ ràng từ bối cảnh, từ mỗi câu bao gồm một chuỗi các từ, nó là tự nhiên sử dụng quy tắc chuỗi Bayes để phân tách một câu. logp(s x, ) logp(s x, ) logp(sx,s , ) (7) 1:1 1i 1 1:1 1 Trong đó s1:1 là viết tắt phần của câu lên đến (l) từ. để tối đa hóa trong mục tiêu. (6) qua toàn bộ dữ liệu huấn luyện, chúng ta cần xác định khả năng logp(x,s1:1-1,θ) có thể được mô hình hóa với hidden layer của trạng thái dấu thời gian trong RNN. 2.4 Tách ảnh từ video và lưu trữ kết quả Sau khi khi hoàn tất xây dựng chức năng tạo câu mô tả cho từng hình ảnh riêng lẻ, video sẽ được tách thành các frame để được mô tả. Tuy nhiên, một video đầu vào được có số khung hình trung bình trong 1s là 30 khung hình, việc mô tả cho tất cả các khung hình trong 1s là gánh nặng cho hệ thống xử lý, đồng thời trong 1s không thể thể hiện được nhiều hành động hay mô tả khác nhau trong 1s. Quá trình thực nghiệm chỉ ra rằng, việc tạo mô tả cho toàn bộ 30 khung hình mỗi giây xuất hiện sự trùng lặp mô tả, cách hành động thường kéo dài trong nhiều giây nên việc cùng lúc lưu trữ hàng chục đến hàng trăm mô tả tương tự nhau là không cần thiết. Chương trình quan tâm đến thời điểm xuất hiện một đối tượng hoặc hành động xuất hiện và kết thúc trong một khoảng thời gian liên tục, do đó thay vì xử lý cho toàn bộ các khung hình trong video, chuyển đổi 2 khung hình mỗi một giây chính gồm khung hình đầu và giữa mỗi giây là giải pháp để giải quyết vấn đề ở trên, tăng tốc độ xử lý video đồng thời là các video có thời lượng dài nhưng vẫn giữ được hiệu quả mục đích của chương trình. 79 Hình 2. Quá trình xử lý video và lưu trữ kết quả của chương trình Trong đó T là khung hình cuối, t là thời gian của khung hình cuối cùng. Dữ liệu sau quá trình sẽ được lưu trữ dưới dạng table trong Database và sẽ được truy xuất thông qua từ khóa, đối chiếu lên caption để trả về thời điểm trong video xuất hiện đối tượng hoặc ngữ cảnh được đề ra. 3 KẾT QUẢ THỰC NGHIỆM 3.1 Mô tả dữ liệu và tiền xử lý Mô tả dữ liệu: Bộ dataset có 8000 ảnh, mỗi ảnh có 5 caption, trong đó: 6000 ảnh - train, 2000 – test. Ở đây chúng tôi sử dụng mô hình có sẵn để huấn luyện cho bộ dữ liệu trên, cụ thể là model Inception V3. Có 2 file chính: File dataset: Chứa tất cả các ảnh. 4 file text: Test image (id ảnh test), train image (id ảnh train), develop image, file token (40000 caption để tạo bộ từ điển). Tiền xử lý dữ liệu: Làm sạch dữ liệu: Chuyển chữ hoa thành chữ thường, loại bỏ các ký tự đặc biệt (‘%’, ‘$’, ‘#’, ...), loại bỏ các từ có chứa chữ số (hey199, ...). Tiền xử lý ảnh: Chỉnh sửa kích thước ảnh theo kích thước model InceptionV3 yêu cầu. 3.2 Thực nghiệm giải quyết bài toán Hình 3. Demo mô tả video 1 Nhận xét: Có thể nhận biết người và hành động tương đối chính xác. 80 4 KẾT LUẬN VÀ Ư NG PHÁT TRIỂN Trong bài báo này, chúng tôi đã giải quyết được vấn đề làm sao để máy tính có thể dự đoán, mô tả cho một bức ảnh, từ đó thực hiện việc chuyển đổi dạng lưu trữ video về dạng text. Việc thực nghiệm dựa trên những dữ liệu có sẵn, chưa chuyên sâu về một chủ đề nhưng đã giúp chúng tôi hiểu được cách thức hoạt động. Với kết quả như trên, trong nghiên cứu tiếp theo, chúng tôi sẽ tiến hành ứng dụng xử lý video để xây dựng hệ thống lưu trữ dữ liệu và trích xuất dữ liệu video trong một chủ đề cụ thể dựa trên nền tảng việc dự đoán, mô tả hình ảnh nhưng với mô tả bằng tiếng việt. TÀI LIỆU THAM KHẢO [1] Karpathy and L. Fei-Fei. Deep visual-semantic alignments for generating image descriptions. In CVPR, 2015 [2] D. Bahdanau, K. Cho, and Y. Bengio. Neural machine translation by jointly learning to align and translate. In ICLR, 2015 [3] Sutskever, O. Vinyals, and Q. V. Le. Sequence to sequence learning with neural networks. In NIPS, 2014 [4] J. Donahue, L. A. Hendricks, S. Guadarrama, M. Rohrbach, S. Venugopalan, K. Saenko, and T. Darrell. Long-term recurrent convolutional networks for visual recognition and description. In CVPR, 2015 [5] J. Mao, W. Xu, Y. Yang, J. Wang, and A. L. Yuille. Deep captioning with multimodal recurrent neural networks (mrnn). In ICLR, 2015 [6] K. Greff, R. K. Srivastava, J. Koutník, B. R. Steunebrink, and J. Schmidhuber. LSTM: A search space odyssey. CoRR, abs/1503.04069, 2015 [7] K. Cho, B. van Merrienboer, C¸ Gulcehre, D. Bahdanau, ¨F. Bougares, H. Schwenk, and Y. Bengio. Learning phrase representations using RNN encoder-decoder for statistical machine translation. In EMNLP, 2014. [8] K. Xu, J. Ba, R. Kiros, K. Cho, A. C. Courville, R. Salakhutdinov, R. S. Zemel, and Y. Bengio. Show, attend and tell: Neural image caption generation with visual attention. In ICML, 2015. [9] O. Vinyals, A. Toshev, S. Bengio, and D. Erhan. Show and tell: A neural image caption generator. In CVPR, 2015. [10] S. Hochreiter and J. Schmidhuber. Long short-term memory. Neural Comput., 9(8):1735–1780, 1997. [11] https://viblo.asia/p/gioi-thieu-ve-cac-pre-trained-models-trong-linh-vuc-computer-vision- 3Q75wB1GlWb (3/6/2020) [12] https://vi.wikipedia.org/wiki/Hàm_hyperbolic_ngược (3/6/2020) 81
File đính kèm:
- caption_image_chuyen_doi_dang_lu_tru_video_ve_dang_text.pdf