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

Khóa luận tốt nghiệp Khoa học máy tính: Tìm hiểu và xây dựng hệ thống truy vấn video trên tập dữ liệu V3C1

89 0 0
Tài liệu đã được kiểm tra trùng lặp

Đ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

Tiêu đề Tìm hiểu và xây dựng hệ thống truy vấn video trên tập dữ liệu V3C1
Tác giả Nguyễn Hồng Quang, Đinh Xuân Vũ
Người hướng dẫn TS. Mai Tiến Dũng, ThS. Đỗ Văn Tiến
Trường học Đại học Quốc gia Thành phố Hồ Chí Minh
Chuyên ngành Khoa học máy tính
Thể loại Khóa luận tốt nghiệp
Năm xuất bản 2021
Thành phố Thành phố Hồ Chí Minh
Định dạng
Số trang 89
Dung lượng 33,94 MB

Cấu trúc

  • 2.2.2.2 Mộtsốthuậttoán (26)
  • 2.2.3.1 Cac đặc trưng cơ bản của video (0)
  • 2.2.3.2 Các kỹ thuật lập chỉ mục trong không gian đa chiều ee 11 2.2.3.3. Mô hình truy van video don giản (28)
  • 2.3.1 Hạn chế của các RecurrentModel (30)
  • 2.3.2 Transformer. ............. . .Ặ Q Q S Q Q . 13 (30)
  • 23.21 Kiến rúcmôhình (0)
    • 2.3.2.2 Encoder và Decoder (0)
  • 23.23. Positional Encoding (32)
    • 2.3.2.4 Cơ chế tập trung (Attention) (32)
    • 2.3.2.5 Scaled Dot-Product Attention (33)
    • 2.3.2.6 Multi-Head Attention (34)
    • 2.3.2.7 Position-wise Feed-Forward Networks (35)
  • 24.1 PatchEmbeddng (36)
    • 2.4.2 PostonalEmbeddng (0)
    • 2.7.1 SOMHuntr........................ 22 2.7.2 VIREI............. So 23 (39)
  • 2.8 Kết qua từ các hệ thống trong VBS2020 (0)
  • 2.9 Kếtchương .......0 000000 ee ee 29 (46)
  • 3.2 Giới thiệu về bộ dữ lệu V3C1 (0)
  • 3.3 Tổng quanhệthống (50)
  • 33.1 Kiéntrichéthéng (0)
    • 3.3.2 Giao diện củahệthống (53)
  • 3.4 Phuong pháp xây dựnghệthống (0)
    • 3.4.1 Tiềnxửlídữ liệu (57)
      • 3.4.1.2 Quá trìnhtiền xử lý dữliệu (61)
    • 3.4.2 Xây dựng Mô-đun Tìm kiếm bằng câu mô tả (62)
    • 3.42.1 CLIP............... 2 ae 45 (62)
    • 3.42.2 FAISS ............0 000000 0s 47 (64)
      • 3.4.2.3 Quá trình xây dựng mdé-dun (65)
    • 3.4.3 Xây dựng Module Scene-lextsearch (0)
      • 3.4.3.1 PaddleOCR (66)
      • 3.4.3.2 ElasticSearch (70)
      • 3.4.3.3 Qua trình xây dựng m6-dun (0)
    • 3.4.4 Xây dựng Mô-đun truy van bằng loại âm thanh (73)
      • 3.4.4.2 Quatrinh xây dựng m6-dun (0)

Nội dung

e Sau khi có thông tin từ việc trích xuất đặc trưng từ dit liệu của người dùng và video có trong cơ sở dữ liệu, sử dụng các thuật toán, mô hình tìm kiếm tương đồng Similarity Search dé t

Mộtsốthuậttoán

So sánh substring là thuật toán đơn giản nhất để tìm kiếm gần chính xác, phương pháp này người dùng sẽ nhập vào một chuỗi và sau đó hệ thống sẽ trả về kết quả các chuỗi mà có chứa chuỗi mà người dùng nhập.

Khoảng cách Levenshtein là số bước ít nhất để biến một chuỗi A thành chuỗi B thông qua ba phép biến đổi: thêm ký tự, bót ký tự, thay đổi ký tự.

Chuỗi con chung dài nhất hay còn gọi là Longest common substring, là một chuỗi chung dài nhất hai chuỗi Ta có thể áp dụng thuật toán tìm chuỗi con chung dài nhất của hai chuỗi, sau đó so sánh độ dài của nó với độ dài của chuỗi cần tìm kiếm, nếu nó lớn hơn một giá trị định mức nào đó thì coi như chuỗi đang so sánh thoã mãn kết quả.

2.2.3 Bài toán truy van video Đối với bài toán truy van video ta có thể ánh xạ về bài toán truy vấn hình ảnh Với bài toán truy vấn hình ảnh ta có ¢ Đầu vào: hình ảnh, ký tự, chuỗi câu mang thông tin mà ta muốn tìm kiếm.

2 Kiến thức cơ sở và các nghiên cứu liên quan

+ Đầu ra: danh sách các hình ảnh mang nội dung tương tự với nội dung của đầu vào.

Như vậy để đưa bài toán truy vấn hình ảnh ta cần thực hiện một số bước tiền xử lí Đầu tiên ta thực hiện gan id cho các video có trong kho dữ liệu, tiếp theo ta chia nhỏ các video thành các video shot va gan id cho các video shot dựa trên id của video ta đã gán trước đó Sau khi chia nhỏ video thành các video shot ta thực hiện gom cụm các frame của video shot lại thành một frame đại diện cho video shot, cuối cùng dùng các phương pháp trích xuất đặc trưng để tạo ra một không gian vector phục vụ cho qua trình tìm kiếm.

2.2.3.1 Các đặc trưng cơ bản của video

Key-frames Feature là những khung hình chính (key-frames) biểu diễn những nội dung chính, đặc điểm chính có trong một video Thông thường, các kỹ thuật tìm kiếm sẽ tiến hành rút trích ra key-frames và thực hiệm tìm kiếm video theo đó.

Object Features ta có thể địch nôm na là đặc trưng của đối tượng bao gồm các đặc trưng về màu, kích thước, vị trí, Các đặc trưng này được sử dụng ở hệ thống vitrivr [4], [5] hay [6], người dùng sẽ truy vấn dựa trên một số đặc trưng của đối tượng như vị trí, số lượng vật thể hay màu sắc.

Audio Features hay có thể hiểu là đặc trưng về âm thanh, thông thường các đoạn video sẽ luôn có âm thanh, các âm thanh này có thể là tiếng nhạc cụ của ghi ta, của dương cầm, vĩ cầm hay thậm chí tiếng xe cộ và người nói, Một số hệ thống sử dụng đặc trưng về âm thanh như vitrivr [4] và [7], người dùng sẽ được lựa chọn một hay nhiều nhãn âm thanh trong hệ thống để thực hiện truy £ van.

2 Kiến thức cơ sở và các nghiên cứu liên quan

2.2.3.2 Các kỹ thuật lập chỉ mục trong không gian đa chiều

Với các bài toán tìm kiếm video thì thường ta sẽ gặp các bộ dữ liệu lớn mà trong trường hợp ở khóa luận này thi bộ dữ liệu V3C1 sẽ lên đến 1.3 TB [2]. Nếu như không tổ chức lưu trữ dữ liệu một cách hiệu quả cũng như không thực hiện index thì thời gian tim kiếm của hệ thống sẽ không đáp ứng được yêu cầu thực tiễn Thêm vào đó số chiều rất lớn của không gian đặc trưng video sẽ khiến việc này càng trở nên cắn thiết nều muốn truy vấn một cách hiệu quả Sau day, chúng tôi xin trình bày một số kĩ thuật index trong không gian đa chiều.

+ IndexFlatL2, đây là phương pháp lập chỉ mục phổ biến nhất ở các hệ thong truy vấn hiện nay, dữ liệu sẽ được đưa về một không gian vector và sử dung khoảng cách L2 (hay còn được biến đến là khoảng cách Eaculidean) để tim kiếm Phương pháp này có độ chính xác cao nhưng vì phải tính khoảng cách cho từng dữ liệu trong cơ sở dữ liệu nên có tốc độ thực thi lâu.

* K-d tree là một phương pháp phổ biến phân chia không gian phụ thuộc vào. dữ liệu (Spatial-based Partition) K-d tree sẽ phân chia tập dữ liệu thành một cây nhị phân với mỗi node sẽ là một điểm trong không gian K chiều, với các node không có lá có thể được coi như là một siêu phẳng được tạo ra để chia cắt không gian thành hai phần.

* Partioning Index là một kỹ thuật phân vùng các chỉ mục với mỗi vùng sẽ chứa chỉ mục của một vùng dif liệu duy nhất.

2.2.3.3 Mô hình truy vấn video đơn giản

Với bài toán truy vấn video, thường luông giải quyết chung như hình 2.4 với các bước như tiền xử lí dif liệu, rút trích đặc trưng, đánh chỉ mục, lưu trữ và thực hiện xây dựng bộ tìm kiếm.

2 Kiến thức cơ sở và các nghiên cứu liên quan

Bộ dữ liệu ban đầu

Mô-đun rút trích đặc |! Bann chị mục

Bộ dữ liệu da được xử lí

Hình 2.4: Kiến trúc chung để giải quyết bài toán !

Mô hình tìm kiếm video cơ bản gồm các thành phần sau:

* Phân đoạn video Các video trong cơ sở dữ liệu sẽ được phân đoạn thành những shot với độ dài ngắn hơn so với video ban đầu hay ta cũng có thể gọi là shot boundary Trong quá trình này, thường một số hệ thống sẽ tiền hành rút trích luôn ca keyframes như SOMHunter [5] hay VIRET [8].

5 Rút trích đặc trưng Sau khi có các keyframes và shot boundary, ta sẽ tiến hành rút trích đặc trưng trên các shot boundary, keyframes này Các features mà ta có thể rút trích được như màu sắc chính (dominant color), các vật thể (object), âm thanh, văn bản cảnh (scene text) hay xây dựng các feature vector để biểu diễn cho các shot này. ¢ Lập chỉ mục và lưu trữ dữ liệu Khi thu được các đặc trưng, feature vector thì ta cần một nơi lưu trữ, lập chỉ mục đặc biệt đối với các bộ dữ liệu lớn như V3C1 [2] hay V3C2 [3] Mục đích của việc nay dé tối ưu không gian lữu trữ cũng như tăng tốc độ truy xuất và tìm kiếm.

* So khớp và xếp hạng kết quả Người dùng thực hiện truy vấn, truy van có thể là một câu văn bản, mô tả vị trí vật thể, số lượng vật thể, hay màu chủ

Các kỹ thuật lập chỉ mục trong không gian đa chiều ee 11 2.2.3.3 Mô hình truy van video don giản

Với các bài toán tìm kiếm video thì thường ta sẽ gặp các bộ dữ liệu lớn mà trong trường hợp ở khóa luận này thi bộ dữ liệu V3C1 sẽ lên đến 1.3 TB [2]. Nếu như không tổ chức lưu trữ dữ liệu một cách hiệu quả cũng như không thực hiện index thì thời gian tim kiếm của hệ thống sẽ không đáp ứng được yêu cầu thực tiễn Thêm vào đó số chiều rất lớn của không gian đặc trưng video sẽ khiến việc này càng trở nên cắn thiết nều muốn truy vấn một cách hiệu quả Sau day, chúng tôi xin trình bày một số kĩ thuật index trong không gian đa chiều.

+ IndexFlatL2, đây là phương pháp lập chỉ mục phổ biến nhất ở các hệ thong truy vấn hiện nay, dữ liệu sẽ được đưa về một không gian vector và sử dung khoảng cách L2 (hay còn được biến đến là khoảng cách Eaculidean) để tim kiếm Phương pháp này có độ chính xác cao nhưng vì phải tính khoảng cách cho từng dữ liệu trong cơ sở dữ liệu nên có tốc độ thực thi lâu.

* K-d tree là một phương pháp phổ biến phân chia không gian phụ thuộc vào. dữ liệu (Spatial-based Partition) K-d tree sẽ phân chia tập dữ liệu thành một cây nhị phân với mỗi node sẽ là một điểm trong không gian K chiều, với các node không có lá có thể được coi như là một siêu phẳng được tạo ra để chia cắt không gian thành hai phần.

* Partioning Index là một kỹ thuật phân vùng các chỉ mục với mỗi vùng sẽ chứa chỉ mục của một vùng dif liệu duy nhất.

2.2.3.3 Mô hình truy vấn video đơn giản

Với bài toán truy vấn video, thường luông giải quyết chung như hình 2.4 với các bước như tiền xử lí dif liệu, rút trích đặc trưng, đánh chỉ mục, lưu trữ và thực hiện xây dựng bộ tìm kiếm.

2 Kiến thức cơ sở và các nghiên cứu liên quan

Bộ dữ liệu ban đầu

Mô-đun rút trích đặc |! Bann chị mục

Bộ dữ liệu da được xử lí

Hình 2.4: Kiến trúc chung để giải quyết bài toán !

Mô hình tìm kiếm video cơ bản gồm các thành phần sau:

* Phân đoạn video Các video trong cơ sở dữ liệu sẽ được phân đoạn thành những shot với độ dài ngắn hơn so với video ban đầu hay ta cũng có thể gọi là shot boundary Trong quá trình này, thường một số hệ thống sẽ tiền hành rút trích luôn ca keyframes như SOMHunter [5] hay VIRET [8].

5 Rút trích đặc trưng Sau khi có các keyframes và shot boundary, ta sẽ tiến hành rút trích đặc trưng trên các shot boundary, keyframes này Các features mà ta có thể rút trích được như màu sắc chính (dominant color), các vật thể (object), âm thanh, văn bản cảnh (scene text) hay xây dựng các feature vector để biểu diễn cho các shot này. ¢ Lập chỉ mục và lưu trữ dữ liệu Khi thu được các đặc trưng, feature vector thì ta cần một nơi lưu trữ, lập chỉ mục đặc biệt đối với các bộ dữ liệu lớn như V3C1 [2] hay V3C2 [3] Mục đích của việc nay dé tối ưu không gian lữu trữ cũng như tăng tốc độ truy xuất và tìm kiếm.

* So khớp và xếp hạng kết quả Người dùng thực hiện truy vấn, truy van có thể là một câu văn bản, mô tả vị trí vật thể, số lượng vật thể, hay màu chủ

2 Kiến thức cơ sở và các nghiên cứu liên quan dao, Khi nhận được câu truy van, hệ thống sẽ tiến hành so khớp bằng sử dụng các vector đặc trưng ở câu truy vấn và ở các shot Kết quả thu được sẽ là một danh sách các shot có giảm dần về sự tương đồng Ngoài ra, nhiều hệ thống còn thực hiện sắp xếp các danh sách này theo nhiều mục đích khác nhau để tối ưu hóa quá trình tìm kiếm.

Hạn chế của các RecurrentModel

Trước đây, đối với các bài toán liên quan đến xử lý các dif liệu ở dạng chuỗi

(sequence) người ta thường dùng các Recurrent Model (RNN, LSTM, GRU).

Tuy nhiên các mô hình này đều tính toán doc theo vị trí của các kí tự, từ, câu, của các đữ liệu đầu vào Với cơ chế này như ta thây để có thể thấy, tại vị trí t để có được kết quả h, ta cần phải có giá trị #„_ va giá trị đầu vào của vị trí t-1 Việc tính toán tuần tự này làm ngăn can khả năng tính toán song song trong quá trính huấn luyện mô hình khiến cho việc huấn luyện mô hình diễn ra rất lâu Ngoài ra các Recurrent Model trong quá trình huấn luyện, việc lan truyền ngược qua từng trạng thái (state) có thể dẫn đến bùng nổ đạo hàm, mắt mát thông tin.

Transformer Ặ Q Q S Q Q 13

Hầu hết các kiến trúc để giải quyết bài toán mà đầu vào là chuỗi và đầu ra là chuỗi (sequence to sequence) đều có chung một kiến trúc: mã hoá - giải mã (encode - decode) Cơ chế hoạt động của các kiến trúc này sẽ hoạt động như sau: Đầu tiên, đầu vào x = (x1, , x„) sẽ được đưa vào khối encoder và mã hoá thành một chuỗi giá trị mới z = (z, , Zn) Sau đó, kết quả đầu ra z của encoder sẽ được đưa vào decoder để giải mã và cho ra kết quả cuối cùng y=(1,

2 Kiến thức cơ sở và các nghiên cứu liên quan

+) Yn) Transformer cũng được xây dựng dưa theo cơ chế này nhưng thay vì sử dụng các đơn vị RNN, LSTM, GRU Transformer sử dụng các lớp self-attention, point-wise và fully-connected cho cả hai phần encoder và decoder.

(Add Agg& Nom, Vader & Norm )

Hình 2.5: Kiến trúc của Transformer !

Encoder: Encoder là một chuỗi gồm 6 lớp giống hệt nhau Mỗi lớp gồm hai lớp nhỏ hơn Lớp đầu tiên được gọi là multi-head self-attention và lớp thứ hai đơn giản hơn được gọi là position-wise fully-connected Ngoài ra mỗi lớp nhỏ này còn có thêm một liên kết residual và một lớp normalization Như vậy đầu ra của mỗi lớp sẽ có dạng là LayerNorm(x + Sublayer(x)), với LayerNorm là lớp

'Vaswani, A., Shazeer, N., Parmar, N., Uszkoreit, J., Jones, L., Gomez, A N Polosukhin, I.

(2017) Attention is all you need In Advances in neural information processing systems (pp 5998- 6008).[9]

2 Kiến thức cơ sở và các nghiên cứu liên quan

Normalization, Sublayer là hàm biểu diễn các lớp nhỏ Để tạo điều kiện để các kết nồi residual có thể cộng được với kết quả đầu ra của các lớp nhỏ,kết quả đầu ra của tất cả các lớp nhỏ, lớp embedding đều sẽ có số chiều là 512.[9]

Decoder: Decoder tương tự như encoder cũng được cấu tạo từ một chuỗi gồm 6 lớp giống hệt nhau Tuy nhiên, trong mỗi lớp của decoder còn được thêm một lớp nhỏ thứ 3 được gọi là masked multi-head attention để tiếp nhận các giá trị đầu ra của khối decoder Cũng như các lớp decoder, các lớp nhỏ của khối decoder cũng có kết nồi residual và lớp normalization để chuẩn hoá dau ra Các lớp masked multi-head attention có mục đích đảm bảo kết quả dữ đoán ở vị trí ¡ chỉ có thể phụ thuộc vào các kết quả của các vị trí nhỏ hơn vị trí ¡ [9]

Khác với các Recurrent Model, transformer sé đưa hết toàn bộ dit liệu input vào để tính toán Vì vậy, để có thể dữ lại tính chất thứ tự của các data ở dạng sequence, mô hình transformer sử dụng một cơ chế được gọi là positional encod- ing Các giá trị đầu ra của positional encoding sẽ có số chiều trùng với số chiều của lớp embedding của mô hình Dưới đây là công thức của positional encoding:

PE (pos,2i) = sin( pos /100002!/4moet )

Với công thức trên, pos là vị trí ở trong câu, i là vi trí ở trong vector embed- ding, dmodet là số chiều embedding của mô hình [9]

2.3.2.4 Cơ chế tập trung (Attention).

Attention - Cơ chế tập trung được coi là một phép gộp tổng quát Nó gộp đầu vào dựa trên các trọng số khác nhau Thành phan cốt lõi của cơ chế tập trung là tầng tập trung Đầu vào của tầng tập trung được gọi là các câu truy vấn (query).

2 Kiến thức cơ sở và các nghiên cứu liên quan

Với mỗi câu truy van, tầng tập trung trả về đầu ra dựa trên bộ nhớ là tập các cặp khoá-giá trị (key-value) được mã hoá trong tầng tập trung này.

Scaled Dot-Product Attention là cơ chế tập trung được dùng trong mô hình transformer, cơ chế này được mô tả như sơ đồ sau:

Hình 2.6: Sơ đồ Scaled Dot-Product Attention ! Đầu vào: 3 ma trận Q (Query), K (Key) và V (Value). Đầu ra: Ma trận attention.

Quá trình tính toán ma trận attention sẽ diễn ra như sau Đầu tiên, hai ma trận đầu vào Q và K sé được nhân với nhau và cho ra một ma trận attention Sau đó, các giá trị trong ma trận attention sẽ được chia với /d; trong đó d; là kích thước

'Vaswani, A., Shazeer, N., Parmar, N., Uszkoreit, J., Jones, L., Gomez, A N., Polosukhin, tI.

(2017) Attention is all you need In Advances in neural information processing systems (pp 5998- 6008).[9]

2 Kiến thức cơ sở và các nghiên cứu liên quan của vector dòng trong ma trận K, mục đích của quá trình này là để tránh việc các giá trị trong ma trận attention quá lớn làm cho quá trình huấn luyện mô hình diễn ra lâu Sau khi có được ma trận attention, tiếp đến là quá trình masking Ma trận mask là ma trận để ngăn cho những vị trí padding tham gia vào quá trình attention Ma trận masking được nhận với một giá trị gần với âm cùng Sơ dĩ thực hiện như vậy là vì ở quá trình masking, ma trận attention sẽ cộng với ma trận mask, khi đó tại những vị trí padding sẽ có giá trị gần như âm vô cần và khi đưa vô phân phối softmax thì các sẽ có giá trị đầu ra bằng 0 Cuối cùng ta đưa kết quả của quá trình cộng ma trận attention với ma trận mask qua phân phối xác suất softmax và lấy kết quả này nhân với ma trận đầu vào V Toàn bộ quá trình sẽ được tóm gọn lại bằng công thức sau:

Multi-head Attention sẽ bao gồm có 4 phần:

* Đầu tiên là các lớp linear và được phân chia thành nhiều head Các lớp linear này sẽ tính toán, trích xuất thông tin của ba ma trận Q (Query), K

* Phần thứ hai sẽ là các lớp Scaled Dot-Product Attention tính toán ra các ma trận attention weights như đã trình bày ở trên.

* Phan thứ ba sẽ là một lớp concatenate có nhiệm vụ liên kết các head lại với nhau.

* Cuối cùng là lớp linear trích xuất thông tin của ma trận đầu ra được tạo ra bởi lớp concatenate và cho ra kết quả cuối cùng.

2 Kiến thức cơ sở và các nghiên cứu liên quan

Hình 2.7: Cấu tạo của khối Multi-Head Attention !

Việc sử dụng nhiều Multi-Head Attention giúp cho mô hình có thể học được attention từ các vị trí trên những biểu diễn không gian khác nhau.

2.3.2.7 Position-wise Feed-Forward Networks.

Lớp Point-wise Feed-Forward Networks có nhiệm vụ biến đổi giá trị đầu ra của lớp Multi-Head Attention là các chuỗi giá trị vị trí bằng các lớp linear Lớp Point-wise Feed-Forward Network được cấu tạo bằng các lớp linear và đặt ở cuối các khối encoder, decoder để tính toán và đưa ra kết quả cuối cùng.

Dua trên những ưu điểm va thành công đạt được của Transformer Nhóm tác giả của Vision Transformer đã sử dụng Encoder của kiến trúc Transformer để

'Vaswani, A., Shazeer, N., Parmar, N., Uszkoreit, J., Jones, L., Gomez, A N., Polosukhin, I.

(2017) Attention is all you need In Advances in neural information processing systems (pp 5998- 6008).[9]

2 Kiến thức cơ sở và các nghiên cứu liên quan thiết kế một kiến trúc được gọi là Vision Transformer (ViT) để phục vụ cho xử lý ảnh. Ý tưởng của ViT biến đổi một tấm ảnh thành các patch có kích thước n x n, sau đó các patch có kích thước này sẽ được duỗi thẳng ra và đưa vào khối Encoder của Transformer để trích xuất thông tin.

Vision Transformer (ViT) Transformer Encoder

{cies} nnheting Linear “id aims Sẽ

Hình 2.8: Kiến trúc của ViT !

Với các mô hình CNN, đầu vào sẽ có kích thước là cố định Tuy nhiên, ViT với mỗi ảnh đầu vào sẽ được chia thành các patch nhỏ với mỗi patch sẽ có kích thước là 16 x 16 Sau khi chia ảnh đầu vào thành các patch có kích thước bằng nhau, các patch này sẽ được duỗi thẳng và đưa vào lớp linear để embedding Kết thúc quá trình này ta sẽ được các embedding vector tương ứng với từng patch.

!¿ Dosovitskiy, L Beyer, A Kolesnikov, D Weissenborn, X Zhai, T Un-terthiner, M Dehghani,

M Minderer, G Heigold, S Gelly,et al., “An image is worth 16x16 words: Transformers for image recognition at scale,”arXiv preprint arXiv:2010 11929, 2020.[ 10]

2 Kiến thức cơ sở và các nghiên cứu liên quan

Tương tự với mô hình Transformer gốc có positional encoding để trích xuất thông tin về vị trí của các từ, cụm từ, kí tu, trong câu thì ViT có positional embedding để khai thác vi trí của patch trong ảnh Với positional embedding mô hình có thể học được thứ tự của từng patch trong ảnh qua đó đảm bảo được ngữ nghĩa của từng patch trong ảnh.

Input patch row rs ư Cosine similarity

Hình 2.9: Độ tương đồng cosine giữa position embedding của các patch.!

Trong kiến trúc của CNN có rất nhiều inductive bias vì tất cả các layer trong kiến trúc đều có các tính chất địa phương (locality), địa phương hai chiều (two-dimension neighborhood) và dịch chuyển tương đương (translation equiv- ariance) Còn đối với ViT, chỉ có các lớp MLP có tính chất địa phương và dịch chuyển tương đương Tính chất địa phương hai chiều chỉ được dùng ở phần đầu của mô hình khi cắt tấm ảnh thành các patch có kích thước giống nhau Mặt

1, Dosovitskiy, L Beyer, A Kolesnikov, D Weissenborn, X Zhai, T Un-terthiner, M Dehghani,

M Minderer, G Heigold, S Gelly,et al., “An image is worth 16x16 words: Transformers for image recognition at scale,”arXiv preprint arXiv:2010.11929, 2020.[10]

Kiến rúcmôhình

Positional Encoding

Cơ chế tập trung (Attention)

Attention - Cơ chế tập trung được coi là một phép gộp tổng quát Nó gộp đầu vào dựa trên các trọng số khác nhau Thành phan cốt lõi của cơ chế tập trung là tầng tập trung Đầu vào của tầng tập trung được gọi là các câu truy vấn (query).

2 Kiến thức cơ sở và các nghiên cứu liên quan

Với mỗi câu truy van, tầng tập trung trả về đầu ra dựa trên bộ nhớ là tập các cặp khoá-giá trị (key-value) được mã hoá trong tầng tập trung này.

Scaled Dot-Product Attention

Scaled Dot-Product Attention là cơ chế tập trung được dùng trong mô hình transformer, cơ chế này được mô tả như sơ đồ sau:

Hình 2.6: Sơ đồ Scaled Dot-Product Attention ! Đầu vào: 3 ma trận Q (Query), K (Key) và V (Value). Đầu ra: Ma trận attention.

Quá trình tính toán ma trận attention sẽ diễn ra như sau Đầu tiên, hai ma trận đầu vào Q và K sé được nhân với nhau và cho ra một ma trận attention Sau đó, các giá trị trong ma trận attention sẽ được chia với /d; trong đó d; là kích thước

'Vaswani, A., Shazeer, N., Parmar, N., Uszkoreit, J., Jones, L., Gomez, A N., Polosukhin, tI.

(2017) Attention is all you need In Advances in neural information processing systems (pp 5998- 6008).[9]

2 Kiến thức cơ sở và các nghiên cứu liên quan của vector dòng trong ma trận K, mục đích của quá trình này là để tránh việc các giá trị trong ma trận attention quá lớn làm cho quá trình huấn luyện mô hình diễn ra lâu Sau khi có được ma trận attention, tiếp đến là quá trình masking Ma trận mask là ma trận để ngăn cho những vị trí padding tham gia vào quá trình attention Ma trận masking được nhận với một giá trị gần với âm cùng Sơ dĩ thực hiện như vậy là vì ở quá trình masking, ma trận attention sẽ cộng với ma trận mask, khi đó tại những vị trí padding sẽ có giá trị gần như âm vô cần và khi đưa vô phân phối softmax thì các sẽ có giá trị đầu ra bằng 0 Cuối cùng ta đưa kết quả của quá trình cộng ma trận attention với ma trận mask qua phân phối xác suất softmax và lấy kết quả này nhân với ma trận đầu vào V Toàn bộ quá trình sẽ được tóm gọn lại bằng công thức sau:

Multi-Head Attention

Multi-head Attention sẽ bao gồm có 4 phần:

* Đầu tiên là các lớp linear và được phân chia thành nhiều head Các lớp linear này sẽ tính toán, trích xuất thông tin của ba ma trận Q (Query), K

* Phần thứ hai sẽ là các lớp Scaled Dot-Product Attention tính toán ra các ma trận attention weights như đã trình bày ở trên.

* Phan thứ ba sẽ là một lớp concatenate có nhiệm vụ liên kết các head lại với nhau.

* Cuối cùng là lớp linear trích xuất thông tin của ma trận đầu ra được tạo ra bởi lớp concatenate và cho ra kết quả cuối cùng.

2 Kiến thức cơ sở và các nghiên cứu liên quan

Hình 2.7: Cấu tạo của khối Multi-Head Attention !

Việc sử dụng nhiều Multi-Head Attention giúp cho mô hình có thể học được attention từ các vị trí trên những biểu diễn không gian khác nhau.

Position-wise Feed-Forward Networks

Lớp Point-wise Feed-Forward Networks có nhiệm vụ biến đổi giá trị đầu ra của lớp Multi-Head Attention là các chuỗi giá trị vị trí bằng các lớp linear Lớp Point-wise Feed-Forward Network được cấu tạo bằng các lớp linear và đặt ở cuối các khối encoder, decoder để tính toán và đưa ra kết quả cuối cùng.

Dua trên những ưu điểm va thành công đạt được của Transformer Nhóm tác giả của Vision Transformer đã sử dụng Encoder của kiến trúc Transformer để

'Vaswani, A., Shazeer, N., Parmar, N., Uszkoreit, J., Jones, L., Gomez, A N., Polosukhin, I.

(2017) Attention is all you need In Advances in neural information processing systems (pp 5998- 6008).[9]

2 Kiến thức cơ sở và các nghiên cứu liên quan thiết kế một kiến trúc được gọi là Vision Transformer (ViT) để phục vụ cho xử lý ảnh. Ý tưởng của ViT biến đổi một tấm ảnh thành các patch có kích thước n x n, sau đó các patch có kích thước này sẽ được duỗi thẳng ra và đưa vào khối Encoder của Transformer để trích xuất thông tin.

Vision Transformer (ViT) Transformer Encoder

{cies} nnheting Linear “id aims Sẽ

Hình 2.8: Kiến trúc của ViT !

PatchEmbeddng

SOMHuntr 22 2.7.2 VIREI So 23

SOMHunter [5] [11] là hệ thống truy vấn video phụ thuộc vào truy van dựa trên văn bản (text query) và người dùng có thể duyệt qua (browsing) danh sách kết qua đã được xếp hang (ranked list) Bên cạnh đó, người dùng có thể kết hợp sử dụng các tùy chọn nâng cao bằng cách phản hồi dựa trên mức độ liên quan (relevance feedback) và bản đồ tự tổ chức (Self Organizing Maps hay SOM) Quy trình tìm kiếm của SOMHunter có thể bắt đầu bằng thực hiện mô tả

2 Kiến thức cơ sở và các nghiên cứu liên quan khung hình (có thể sử dụng kèm thêm temporal query), người dùng có thể tiếp tục duyệt qua danh sách đã được xếp hạng hoặc có thể sử dụng màn hình SOM. Người dùng cũng có thể chọn một vài khung hình có sự liên quan để cập nhật relevance score trong cơ sở dữ liệu Các thao tác được nêu trên có thể lập lại liên tục bằng cách lựa chọn các ví dụ được gợi ý ra sau mỗi lần thao tác Ngoài ra, SOMHunter còn có hỗ trợ các chức năng như tóm tắt video (video summary), tìm kiếm các khung hình liên quan nhất với khung hình vừa được chọn lựa.

VIRET [8] [11] Chiến thuật mà đội thi sử dụng có thể nói tương tự như SOMHunter [5] là truy vấn liên tục (iterative query formulation) và kết quả trả về là frames hay có thể hiểu là những hình ảnh đại điện cho một video (thumbnail)

2 Kiến thức cơ sở và các nghiên cứu liên quan kèm thêm các tính năng như tóm tắt video, xem trước video Các video được trích xuất đặc trưng bằng W2VV++ [12] để phục vụ cho các tính năng như truy vấn bằng văn bản (query by text) hay truy vấn bằng ví dụ (query by example) và cũng xuất hiện tính năng temporal query tương tự như SOMHunter Tuy nhiên, điểm khác biệt giữa VIRET và SOMHunter nằm ở chỗ có sự kết hợp giữa truy vấn bằng ví dụ (query by example) hoặc tìm kiếm bằng màu (color), phác thảo ngữ nghĩa (semantic sketches).

2.73 vitrivr vitrivr [4] [11] là hệ thống hỗ trợ nhiều loại hình truy vấn khác nhau tuy nhiên, chỉ có một só được sử dụng tại cuộc thi VBS như truy vấn bằng hình vẽ (Query-by-Sketch, bao gồm cả visual và semantic sketch), truy vấn bằng ví dụ

2 Kiến thức cơ sở và các nghiên cứu liên quan

(Query-by-Example) và nhiều loại hình truy vấn khác Ở cuộc thi VBS 2020, đội thi vitrivr chỉ sử dụng hình thức truy vấn bằng văn bản (textual query) để thực hiện tìm kiếm tags và captions được tạo ra bằng [13] Với tìm kiếm bằng tags được lựa chọn sử dụng nhiều nhất bởi vì người dùng có thể dễ dàng và nhanh chóng lựa chọn được tag phù hợp dựa vào chức năng tự động gợi ý (auto completion) Đây là một chiến thuật mang tính cạnh tranh vì có thể tăng tốc độ tìm kiếm và số lượng tag trong hệ thống vitrivr là một con số hữu hạn không như captions Còn tính năng tìm kiếm bằng caption, người dùng phải lựa chọn từ ngữ chính xác được lưu trữ trong hệ thống dẫn đến tìm kiếm bằng tags được ưu tiên hơn Ngoài ra, hệ thống vitrivr còn hỗ trợ thêm temporal queries, nghĩa là người dùng có thể tìm kiếm dựa vào thời gian xuất hiện nhưng do mới xuất hiện nên đội thi đã không sử dụng nhiều ở cuộc thi.

2 Kiến thức cơ sở và các nghiên cứu liên quan

Exquisitor [14] [1 1] là một hệ thống nguyên mẫu được sử dụng mục đích học hỏi sự tương tác ở quy mô lớn (large-scale interactive learning) [15] Hệ thống sẽ hoạt bằng cách nhận được phản hồi về mức độ liên quan (relevance feedback) và xây dựng nên mô hình ngữ nghĩa (semantic model) về ý định tìm kiếm của người dùng Và sau đó, sử dụng một chỉ mục đa chiều (high dimensional index) để tìm kiếm những keyframes có sự tương quan cao nhất Khi keyframes tương tự được tìm thấy, người dùng có thể xem được toàn video đó bằng timeline browser Chức năng tìm kiếm bằng văn bản (text-search) cũng được đưa vào hệ thống, được sử dụng như một chức năng hỗ trợ để đánh giá mức độ liên quan. Nếu trường hợp keyframes quá khó để tìm thấy, người dùng cũng có thể sử dụng

Hình 2.14: Giao diện hệ thông Exquisitor Nguồn Internet!

2 Kiến thức cơ sở và các nghiên cứu liên quan

IVIST [16] [11] là hệ thống có khả năng linh hoạt cao phục vụ mục đích truy vấn video dựa trên 4 lựa chọn tìm kiếm như: phát hiện vật thể (object detec- tion), phát hiện văn bản (scene-text detection), tìm kiếm dựa trên màu chủ đạo

(dominant-color), và truy vấn bằng văn bản (text retrieval) Người dùng có thể linh hoạt tùy chỉnh chọn một hoặc nhiều chức năng tìm kiếm, lựa chọn ưu tiên những chức năng mong muốn và hệ thống sẽ tự động cập nhật trọng số về tầm quan trọng của chức năng đó Sau đó, hệ thống sẽ thực hiện truy vấn và trả về một danh sách xếp hạng các video, néu số lượng video quá nhiều thì người ding có thể linh hoạt thêm chức năng hoặc điều chỉnh mức độ ưu tiên của các chức năng tìm kiếm để giảm số lượng video.

VIREO [17] [11] Hệ thống này hỗ trợ 3 cách thức để thực hiện truy vấn là color sketch [18] , concepts [19] và text query [12] Kết quả của truy van bằng color sketch được nhóm tác giả sử dụng lại ý tưởng từ hệ thống cũ tham gia cuộc thi TRECVID 2019 [19] Hệ thống VIREO cũng trích xuất nhiều concept về vật thể (object), hành động (actions) và quang cảnh (places) kết hợp với phương pháp Universal Sentence Embedding để truy van hiệu quả hơn Bên cạnh đó, hệ thống cũng sử dụng hình thức truy vấn bằng văn bản (text-query) và mô hình W2VV++ [12] như các hệ thống SOMHunter, VIRET Cuối cùng, lấy cảm hứng từ kết quả cuộc thi TRECVID 2019 mà đội thi VIRET đạt được, VIREO đã xây dựng một hệ thống tương tự cho riêng mình cho phép tìm kiếm tại thời điểm T và T+1 va trả về kết quả phù hợp nhất.

2 Kiến thức cơ sở và các nghiên cứu liên quan

VNU [20] [L1] là hệ thống này tích hợp các model về cảnh (scene), concept, văn bản (text) và mau sắc vật thé (object color) để thực hiện truy vấn Do nhóm tác giả VNU không tham gia vào nghiên cứu này [11] nên khó có thêm thông tin để cung cấp về hệ thống này vì thế ta hãy bỏ qua phần này.

2.8 Kết quả từ các hệ thống trong VBS 2020 Ở năm 2020, do ban tổ chức gặp trục trặc về một số vấn đề kĩ thuật nên không xuất hiện phan thi AVS mà chỉ có T-KIS và V-KIS với thời gian lần lượt của mỗi phần là 7 phút và 5 phút.

Sơ lược kết quả ở bảng 2.1, ta có thể thấy rằng 3 đội đầu bảng đạt kết quả xuất sắc và bỏ khá xa so với các đội còn lại Đứng đầu, SOMHunter đạt kết quả tuyệt đối ở phần thi V-KIS và phần T-KIS cũng có kết quả khá tốt Đội về sau là VIRET, hệ thống này có một số chức năng khá tương tự với SOMHunter có kết quả tổng kết khá gần với SOMHunter Cuối cùng là vitrivr, với phần thi T-KIS có đội thi vitrivr đạt kết quả tuyệt đối tuy nhiên ở phan thi V-KIS thì bỏ lại khá xa so với VIRET và SOMHunter Bên cạnh đó, ta cũng có thấy rằng đội thi VIREO mặc dù đạt kết quả không tốt ở phần thi T-KIS ảnh hưởng đến kết quả chung trong toàn cuộc thi Tuy nhiên, họ lại đạt được kết quả tốt ở V-KIS và cao hơn hẳn so với vitrivr và VIRET. Đi sâu hơn vào các tác vụ trong cuộc thi, ta có thể thấy rằng bảng 2.2 3 đội đầu bảng ở phần expert thì hầu hết các đội thi đều giải quyết được hơn 75% các tác vụ được đề xuất mà ấn tượng nhất chính là đội SOMHunter đã giải được hơn 80% số các tác vụ Còn ở phần thi Novice, do còn thiếu kinh nghiệm khi sử

'J LokoTMc, P Vesely, F Mejzlík, G Koval” cik, T Sou” cek, L Rossetto,K Schoeffmann, W.

Bailer, C Gurrin, L Sauter, J Song, S Vrochidis,J Wu, and B t Jonsson, “Is the reign of interac- tive search eternal? find-ings from the video browser showdown 2020,” [11]

2 Kiến thức cơ sở và các nghiên cứu liên quan

Solved KIS tasks Rank | System T-KIS | V-KIS | score TI vi vy

Bảng 2.1: Bảng điểm của các đội ở VBS 2020 3 cột cuối cùng thể hiện số lượng task mà các đội thi giải quyết được, textual expert tasks (T), visual expert tasks (V), visual novice KIS tasks (V*).! dụng hệ thống và không nhận được sự trợ giúp từ các đội trong quá trình thi nên ti lệ giải quyết được khá thấp chỉ vào khoảng trung bình 18% nhưng ta vẫn có thể thấy các đội thi sử dụng mô hình joint embedding thể hiện ưu thế rõ rệt ở tất cả các phần thi.

Qua chương 2, chúng ta đã được giới thiệu lại các khái niệm, các kiến thức nên tảng và tìm hiểu sơ lược về bài toán truy vấn video để xây dựng nên tang. Tiếp theo, chúng ta còn được tìm hiểu các nghiên cứu liên quan giải quyết bài toán truy vấn video, tìm hiểu về cuộc thi Video Browser Showdown hằng năm nghiên cứu về truy vấn tương tác giữa người dùng và hệ thống Và cuối cùng, ta cùng nhau xem xét kết quả mà các hệ thống đạt được ở cuộc thi VBS 2020 để từ đó có cái nhìn tổng quan hơn về hiệu quả của từng hệ thống khi được thực

'J, Loko 7c, P Vesely, E Mejzlík, G Koval” cik, T Sou~cek, L Rossetto,K Schoeffmann, W.

Bailer, C Gurrin, L Sauter, J Song, S Vrochidis,J Wu, and B t lónsson, “Is the reign of interac- tive search eternal? find-ings from the video browser showdown 2020,” [11]

2 Kiến thức cơ sở và các nghiên cứu liên quan

SOMH VIRET viưwr == VIREO EXQ IMST AAU ITEC VERGE VNU SOLVED

SOLV V-E va va 293sạ) | 2285) | 29880)" 20%, wai 10% vg 8 261s/; 20%

Kếtchương .0 000000 ee ee 29

Qua chương 2, chúng ta đã được giới thiệu lại các khái niệm, các kiến thức nên tảng và tìm hiểu sơ lược về bài toán truy vấn video để xây dựng nên tang. Tiếp theo, chúng ta còn được tìm hiểu các nghiên cứu liên quan giải quyết bài toán truy vấn video, tìm hiểu về cuộc thi Video Browser Showdown hằng năm nghiên cứu về truy vấn tương tác giữa người dùng và hệ thống Và cuối cùng, ta cùng nhau xem xét kết quả mà các hệ thống đạt được ở cuộc thi VBS 2020 để từ đó có cái nhìn tổng quan hơn về hiệu quả của từng hệ thống khi được thực

'J, Loko 7c, P Vesely, E Mejzlík, G Koval” cik, T Sou~cek, L Rossetto,K Schoeffmann, W.

Bailer, C Gurrin, L Sauter, J Song, S Vrochidis,J Wu, and B t lónsson, “Is the reign of interac- tive search eternal? find-ings from the video browser showdown 2020,” [11]

2 Kiến thức cơ sở và các nghiên cứu liên quan

SOMH VIRET viưwr == VIREO EXQ IMST AAU ITEC VERGE VNU SOLVED

SOLV V-E va va 293sạ) | 2285) | 29880)" 20%, wai 10% vg 8 261s/; 20%

Bảng 2.2: Thời gian truy vấn của từng tác vụ và tỉ lệ đúng của các đội Các con số màu đỏ thể hiện đã tìm ra được video nhưng không tìm được shot ! nghiệm.

Về bài toán truy van video, có thể thấy rằng các đội thi VIREO [17], VIRET

[8], SOMHunter [5] sử dụng các phương pháp tìm kiếm bằng cách sử dung joint embedding như W2VV++ đạt được kết quả rất ấn tượng Phương pháp này thân thiện, dé sử dụng đối với người dùng đặc biệt là ở phan thi novice session, có thể thực hiện thao tác truy vấn bằng cách miêu tả những sự kiện, vật thể hay hành động có trong video một cách tự do mà không cần theo một khuôn mẫu nào Bên cạnh đó, đội thi vitrivr [4] không sử dụng phương pháp tìm kiếm bằng joint embedding nhưng bù đắp lại bằng cách rút trích rất nhiều đặc trưng ở các video để xây dựng nên không gian tìm kiếm Phương pháp này tuy đạt kết quả ấn tượng nhưng kiến việc tiền xử lí rất nặng nề Ngoài ra, ở cuộc thi còn rất nhiều phương pháp cũng như chiến thuật thực hiện truy vấn tìm kiếm khác nhau

2 Kiến thức cơ sở và các nghiên cứu liên quan và mỗi phương pháp, chiến thuật sẽ có ưu điểm cũng như nhược điểm của riêng mình Tùy vào chiến thuật, phương pháp cũng như quá trình thực nghiệm mỗi đội sẽ lựa chọn hướng đi riêng cho mình.

XÂY DUNG HỆ THONG TRUY VAN

VIDEO TREN BỘ DU LIEU V3C1

3.2 Giới thiệu về bộ dữ liệu V3C1 Để có thể tiến hành thực nghiệm, phân tích đánh giá về bài toán truy vấn tương tác (interactive video retrieval) của người dùng với hệ thống trong thực tế thì ta cần có một bộ dữ liệu đủ lớn, thách thức, nằm ở nhiều tình huống khác nhau và lĩnh vực khác nhau như từ các bộ phim, từ các cảnh tự quay, tự sáng tạo về các chủ đề hài hước, châm biếm cho đến các phim tài liệu, khoa học Hay nói cách khác, ta cần một bộ dữ liệu có thể đại diện được cho những hoạt động thường ngày trên internet của chúng ta và nhu cầu tìm kiếm một video cụ thể nào đó Chính vì thế, bộ đữ liệu Vimeo Creative Commons Collection (V3C)

[21] được tạo ra phù hợp với định hướng mà chúng ta mong muốn.

Bộ dữ liệu V3C [21] gồm có 3 phần là V3C1,V3C2 và V3C3 Day là bộ dữ liệu video rất lớn gồm có 28450 video với tổng thời lượng khoảng 3800 giờ được thu thập được từ các website trong suốt nhiều năm trời để có thể phục vụ

3 Xây dựng hệ thống truy vấn video trên bộ dữ liệu V3C1. mục đích nghiên cứu và mô phỏng các tình huống có trong thực tế Ngoài ra, phan đầu của bộ V3C là V3C1 được dự định sẽ sử dụng trong 3 năm liên tiếp từ 2019-2021 6 VBS và TRECVID Các phan còn lại của bộ dif liệu sẽ được lên kế hoạch sử dụng và mở rộng ra trong các năm tiếp theo.

Phan đầu tiên của bộ dữ liệu hay V3C1 sẽ là phần mà chúng ta quan tâm nhất vì để có thể so sánh được với các hệ thống khác ở cuộc thi VBS 2020, ta chỉ sử dụng V3C1 để phù hợp Để cụ thể hơn, bộ dữ liệu V3C1 gồm khoảng 1000 giờ video và tổng cộng khoảng gan 1 triệu shot có thể đủ thách thức và số lượng để có thể đáp ứng được nhu cầu của chúng ta Ở nghiên cứu [2] đã thực hiện phân tích dữ liệu về màu sắc chủ đạo, số lượng văn bản hay số lượng khuôn mặt và các thuộc tính, đặc điểm khác nên ta sẽ bỏ qua phần này và đi sâu vào phương pháp xây dựng nên hệ thống của chúng ta.

Sau khi phân tích kết quả ở cuộc thi VBS 2020, chúng ta đã có cái nhìn tổng quát về các chiến lược, chức năng cũng như phương pháp và cách thức xây dựng hệ thống truy van trên bộ dữ liệu lớn V3C1 [2] Với SOMHunter [5] hay VIRET [8], họ sẽ tiến hành chia nhỏ các video thành các shot nhỏ hơn để tối ưu không gian tìm kiếm bằng TransNetV2 [22] Tiếp đến sẽ tiến hành sử dụng các mô hình trích xuất đặc trưng W2VV++ [12] trên những keyframes có được từ TransNetV2 để xây dựng phương pháp truy vấn bằng văn bản (query-by-text) và cuối cùng tối ưu quá trình tìm kiếm bằng các phương pháp như relevance feedback, SOM Hay đối với vitrivir, họ có một hướng tiếp cận khác bằng cách tập trung vào khai thác các yêu tố về mặt thị giác như các đặc trưng về vật thể (vị trí, màu sắc, số lượng), các đặc trưng về âm thanh và cả về mặt thời gian

3 Xây dựng hệ thống truy van video trên bộ dữ liệu V3C1.

Lấy cảm hứng từ các ý tưởng trên và minh chứng cho sự hiệu quả ở cuộc thi VBS 2020, chúng tôi sé tập trung khai thách phương pháp truy vấn bằng văn bản nhưng lần này sẽ khai thác một mô hình lớn hơn cũng như độ chính xác cao hơn và đồng thời tăng tốc thời gian truy van bằng cách khai thác thêm các chiến lược lập chỉ mục (indexing) cũng như tính toán sử dụng GPU Bên cạnh đó, chúng tôi còn khai thác các đặc trưng về âm thanh cũng như các văn bản cảnh (scene-text) có xuất hiện ở các video Bây giờ ta hãy bàn tổng quan về hệ thống, các bước cũng như từng giai đoạn xây dựng như thé nào Hệ thống chúng tôi gồm có 2 giai đoạn chính là giai đoạn tiền xử lí và giai đoạn xử lí trực tuyến.

: Mô-đui Chỉ mục ban đầu —' trích } 1 s hi e

Mô-đun rút || trích âm thanh ja Tìm kiếm —*/ Kếtquả / [ feature vector

Hình 3.1: Tổng quan hệ thống

Trước tiên chúng tôi sẽ tiến hành trích xuất shot boundary và lấy các keyframe bằng mô hình TransNetV2 [22] Như ta đã phân tích ở phần trước về khối lượng của bộ dữ liệu V3CI thì việc tìm kiếm trên một số lượng video cùng với thời lượng khổng lồ là một việc hết sức khó khăn và thậm chí có thể là không thực tế Chính vì thế ta cần phải giảm thời lượng video, khối lượng cần lưu trữ và chỉ tập trung vào các nội dung cần thiết có trong các video, việc này sẽ tăng tốc

3 Xây dựng hệ thống truy vấn video trên bộ dữ liệu V3C1. quá trình trích xuất đặc trưng, các siêu dữ liệu được sử dụng ở các bước sau. Phương pháp này thường được áp dụng trong một số các hệ thống như [5], [8] và đã chứng minh được sự hiệu quả của nó trong các cuộc thi VBS vừa rồi Tiếp theo, chúng tôi sẽ tiếp tục tiến hành trích xuất siêu dữ liệu (metadata) và các đặc trưng dựa trên các shot boundary và các keyframe đó Các dữ liệu này sẽ được tiến hành lưu trữ và lập chỉ mục (indexing) trong nhiều loại database khác nhau phù hợp với chính nó để tối ưu không gian lưu trữ cũng như cải thiện tốc độ truy vấn.

Sau khi đã có cơ sở dữ liệu về chỉ mục của các đặc trưng được trích xuất, hệ thống sẽ kết hợp thêm các mô-đun tìm kiếm để khiến quá trình tìm kiếm trở nên nhanh chóng và hiệu quả hơn Người dùng sẽ thực hiện tương tác để truy vân với bộ tìm kiếm của hệ thống thông qua một giao diện web Hệ thống sẽ hỗ trợ 3 cách truy vấn lần lượt bằng cách sử dụng văn bản cảnh (scene-text), câu miêu tả (text query) và nhãn của âm thanh (audio tags) Người dùng có thể thực hiện truy vấn từng phương pháp tùy theo nhu cầu, xem kết quả của từng phương pháp hoặc có thể cùng lúc kết hợp cả 3 phương pháp lại với nhau Kết quả của 3 phương pháp sẽ được hệ thong kết hợp lại với nhau một cách phù hợp bằng phép toán tử AND và trả về cho người dùng Với cách truy van đầu tiên là văn bản cảnh, người dùng có thể tự do nhập văn bản mà bản thân thay được trên các shot rồi hệ thống sẽ tìm kiếm thực hiện tìm kiếm thông qua module Scene-Text và trả về các kết quả liên quan Tương tự với text query, chức năng này có phần hoạt động tương tự như các hệ thống SOMHunter, VIRET và VIREO Người dùng sẽ có thể sử dụng câu miêu tả về một đoạn video thành như một câu truy vấn và hệ thống sẽ tìm kiếm kêt quả phù hợp nhất để có thể trả về Cuối cùng là truy van bằng audio tags, chức năng này sẽ giới hạn người dùng chỉ được chọn trong các tags cho phép để tìm kiếm Tuy nhiên, hệ thống chúng tôi có hỗ trợ chức năng gợi (auto suggest) nhớ dựa trên văn bản đầu vào sẽ giúp tăng tốc truy vấn cũng như người dùng sẽ không cần nhớ các tags cụ thể.

3 Xây dựng hệ thống truy van video trên bộ dữ liệu V3C1.

Qua trên, chúng ta đã có cái nhìn tổng quát về phương pháp xây dựng hệ thống cũng như các chức năng có trong hệ thống Sơ đồ 3.1 thể hiện tổng quát quy trình hệ thống Chi tiết các thành phan và các bước cần thực hiện sẽ được chúng tôi trình bày ở các phần tiếp theo của chương này.

3.3.2 Giao diện của hệ thống

Giao diện của hệ thống chúng tôi tập trung vào sự đơn giản, trực quan để người sử dụng mà đặc biệt là người mới có thể hiểu được, sử dụng được chỉ với một bài hướng dẫn cơ bản Do hệ thống được xây dựng dựa trên nền tảng web, nên người dùng hầu như không phải cài đặt các công cụ cần thiết gì Họ chỉ cần có một máy tính, một trình duyệt được cài sẵn và như thế đã có thể sử dụng được hệ thống của chúng tôi.

Tổng quanhệthống

Sau khi phân tích kết quả ở cuộc thi VBS 2020, chúng ta đã có cái nhìn tổng quát về các chiến lược, chức năng cũng như phương pháp và cách thức xây dựng hệ thống truy van trên bộ dữ liệu lớn V3C1 [2] Với SOMHunter [5] hay VIRET [8], họ sẽ tiến hành chia nhỏ các video thành các shot nhỏ hơn để tối ưu không gian tìm kiếm bằng TransNetV2 [22] Tiếp đến sẽ tiến hành sử dụng các mô hình trích xuất đặc trưng W2VV++ [12] trên những keyframes có được từ TransNetV2 để xây dựng phương pháp truy vấn bằng văn bản (query-by-text) và cuối cùng tối ưu quá trình tìm kiếm bằng các phương pháp như relevance feedback, SOM Hay đối với vitrivir, họ có một hướng tiếp cận khác bằng cách tập trung vào khai thác các yêu tố về mặt thị giác như các đặc trưng về vật thể (vị trí, màu sắc, số lượng), các đặc trưng về âm thanh và cả về mặt thời gian

3 Xây dựng hệ thống truy van video trên bộ dữ liệu V3C1.

Lấy cảm hứng từ các ý tưởng trên và minh chứng cho sự hiệu quả ở cuộc thi VBS 2020, chúng tôi sé tập trung khai thách phương pháp truy vấn bằng văn bản nhưng lần này sẽ khai thác một mô hình lớn hơn cũng như độ chính xác cao hơn và đồng thời tăng tốc thời gian truy van bằng cách khai thác thêm các chiến lược lập chỉ mục (indexing) cũng như tính toán sử dụng GPU Bên cạnh đó, chúng tôi còn khai thác các đặc trưng về âm thanh cũng như các văn bản cảnh (scene-text) có xuất hiện ở các video Bây giờ ta hãy bàn tổng quan về hệ thống, các bước cũng như từng giai đoạn xây dựng như thé nào Hệ thống chúng tôi gồm có 2 giai đoạn chính là giai đoạn tiền xử lí và giai đoạn xử lí trực tuyến.

: Mô-đui Chỉ mục ban đầu —' trích } 1 s hi e

Mô-đun rút || trích âm thanh ja Tìm kiếm —*/ Kếtquả / [ feature vector

Hình 3.1: Tổng quan hệ thống

Trước tiên chúng tôi sẽ tiến hành trích xuất shot boundary và lấy các keyframe bằng mô hình TransNetV2 [22] Như ta đã phân tích ở phần trước về khối lượng của bộ dữ liệu V3CI thì việc tìm kiếm trên một số lượng video cùng với thời lượng khổng lồ là một việc hết sức khó khăn và thậm chí có thể là không thực tế Chính vì thế ta cần phải giảm thời lượng video, khối lượng cần lưu trữ và chỉ tập trung vào các nội dung cần thiết có trong các video, việc này sẽ tăng tốc

3 Xây dựng hệ thống truy vấn video trên bộ dữ liệu V3C1. quá trình trích xuất đặc trưng, các siêu dữ liệu được sử dụng ở các bước sau. Phương pháp này thường được áp dụng trong một số các hệ thống như [5], [8] và đã chứng minh được sự hiệu quả của nó trong các cuộc thi VBS vừa rồi Tiếp theo, chúng tôi sẽ tiếp tục tiến hành trích xuất siêu dữ liệu (metadata) và các đặc trưng dựa trên các shot boundary và các keyframe đó Các dữ liệu này sẽ được tiến hành lưu trữ và lập chỉ mục (indexing) trong nhiều loại database khác nhau phù hợp với chính nó để tối ưu không gian lưu trữ cũng như cải thiện tốc độ truy vấn.

Sau khi đã có cơ sở dữ liệu về chỉ mục của các đặc trưng được trích xuất, hệ thống sẽ kết hợp thêm các mô-đun tìm kiếm để khiến quá trình tìm kiếm trở nên nhanh chóng và hiệu quả hơn Người dùng sẽ thực hiện tương tác để truy vân với bộ tìm kiếm của hệ thống thông qua một giao diện web Hệ thống sẽ hỗ trợ 3 cách truy vấn lần lượt bằng cách sử dụng văn bản cảnh (scene-text), câu miêu tả (text query) và nhãn của âm thanh (audio tags) Người dùng có thể thực hiện truy vấn từng phương pháp tùy theo nhu cầu, xem kết quả của từng phương pháp hoặc có thể cùng lúc kết hợp cả 3 phương pháp lại với nhau Kết quả của 3 phương pháp sẽ được hệ thong kết hợp lại với nhau một cách phù hợp bằng phép toán tử AND và trả về cho người dùng Với cách truy van đầu tiên là văn bản cảnh, người dùng có thể tự do nhập văn bản mà bản thân thay được trên các shot rồi hệ thống sẽ tìm kiếm thực hiện tìm kiếm thông qua module Scene-Text và trả về các kết quả liên quan Tương tự với text query, chức năng này có phần hoạt động tương tự như các hệ thống SOMHunter, VIRET và VIREO Người dùng sẽ có thể sử dụng câu miêu tả về một đoạn video thành như một câu truy vấn và hệ thống sẽ tìm kiếm kêt quả phù hợp nhất để có thể trả về Cuối cùng là truy van bằng audio tags, chức năng này sẽ giới hạn người dùng chỉ được chọn trong các tags cho phép để tìm kiếm Tuy nhiên, hệ thống chúng tôi có hỗ trợ chức năng gợi (auto suggest) nhớ dựa trên văn bản đầu vào sẽ giúp tăng tốc truy vấn cũng như người dùng sẽ không cần nhớ các tags cụ thể.

Kiéntrichéthéng

Giao diện củahệthống

Giao diện của hệ thống chúng tôi tập trung vào sự đơn giản, trực quan để người sử dụng mà đặc biệt là người mới có thể hiểu được, sử dụng được chỉ với một bài hướng dẫn cơ bản Do hệ thống được xây dựng dựa trên nền tảng web, nên người dùng hầu như không phải cài đặt các công cụ cần thiết gì Họ chỉ cần có một máy tính, một trình duyệt được cài sẵn và như thế đã có thể sử dụng được hệ thống của chúng tôi.

Hình 3.2: Giao diện chính của hệ thống UIT-VBS. Ở hình 3.2 là giao diện chính của hệ thống Giao diện được chia ra 2 phần với bên tay trái chứa đựng các năng xem shot phải thực hiện tìm kiếm (nút màu

3 Xây dựng hệ thống truy vấn video trên bộ dữ liệu V3C1. đỏ kèm với dòng chữ Can you find this video), các chức năng tìm kiếm, thời gian còn lại thực hiện nhiệm vụ cũng như một thanh công cụ giúp phóng to thu nhỏ các kết quả ở phía bên phải màn hình Các chức năng như Text-Visual search, truy vấn sẽ được thực hiện bằng cách nhập một câu miêu tả về sự kiện, hành động hay vật thể có diễn ở trong một shot hay video nào đó Tương tự với OCR

Search, người dùng sẽ nhập những văn bản cảnh (scene-text) hay văn bản (OCR) có xuất hiện Cuối cùng là Audio Tag, người dùng sẽ không được nhập tự do như

2 tính năng phía trên mà chỉ được lựa chọn một hay nhiều tag đã được định sẵn. Để giảm bớt quá trình tìm kiếm một tag cụ thể nào đó, chúng tôi có sử dụng thêm các công cụ gợi ý tag và khi đó, người dùng chỉ cần nhập một hay một số từ và các tag liên quan sẽ xuất hiện và đưa lên đầu Bên tay phải, đây chính là các kết quả sau khi được truy van và thể hiện lên màn hình mà mỗi hình ảnh hay chính xác hơn chính là thumbnail, đại diện cho một shot Kích thước của lưới thumbnail này sẽ phụ thuộc vào tùy chỉnh của người dùng thông qua thanh trượt bên tay phải đã nêu ở hình 3.2 Chức năng này sẽ thực sự hữu ích với các trường hợp mà người dùng muốn linh hoạt chuyển đổi các chiến thuật tìm kiếm nhanh bằng cách tăng số lượng ảnh được thể hiện hay cần phải quan sát chỉ tiết một cách cụ thể, tỉ mi, cẩn trong hơn.

3 Xây dựng hệ thống truy van video trên bộ dữ liệu V3C1.

Hình 3.3: Giao diện hệ thống khi người dùng xem một shot cụ thể.

Mỗi thumbnail trong lưới đều có thể nhấp vào để mở ra một cửa sổ như hình 3.3 Cửa sổ này sẽ cung cấp cho người dùng 3 tab là Video Summary, Audio và Othershots với các mục đích cung cấp thông tin khác nhau Cụ thể với tab đầu tiên là Video Summary, các keyframes trích xuất ra được bằng mô hình TransNetV2 [22] sẽ được thể hiện ở đây Các keyframes này sẽ đóng vai trò như thể hiện nội dung diễn ra trong một clip mà ta không cần phải thực hiện xem toàn bộ một shot mà vẫn biết được các thông tin và nội dung cần thiết, việc này sẽ giúp ta giảm thiểu thời gian truy vấn một cách đáng kể Hình 3.4 thể hiện tab

Audio, nhiệm vụ chính của tab này chỉ đơn giản giúp người dùng nghe lại các âm thanh có trong một shot Người dùng có thể đối chiếu và kiểm tra các kết quả thu được sau khi sử dụng tính năng truy vấn bằng Audio Tags Cuối cùng là tab Other Shots, ở nghiên cứu [1] các kết quả thu được ở cuộc thi VBS 2020 thì nhóm tác giả đã chỉ ra rằng tình trạng các đội thi sẽ gặp phải trường hợp tìm kiếm được shot nhưng không kiếm được video tương đối nhiều Vì thế để khắc

3 Xây dựng hệ thống truy van video trên bộ dữ liệu V3C1. phục tình trạng này, chúng tôi đã thêm vào tính năng này để có thể giúp người dùng nắm bắt toàn bộ nội dung trong một video và nhanh chóng chuyển qua lại giữa các shot.

Hình 3.4: Giao diện hệ thống khi người dùng chuyển qua tag Audio.

Phuong pháp xây dựnghệthống

Tiềnxửlídữ liệu

Như ở phần trước ta đã nói sơ lược về hệ thống cũng như lý do vì sao ta phải thực hiện tiền xử lí dữ liệu trên bộ V3C1 thì ở phan này ta sẽ nói sâu về phương pháp thực hiện tiền xử li dit liệu trên bộ V3C1 như thé nào.

Quá trình tiền xử lý dit liệu sẽ bao gồm các bước sau:

* Thực hiện tìm kiếm các phân đoạn chuyển cảnh (shot boudary) có trong video.

* Tit các shot boundary thực hiện cắt video thành các video shot.

+ Lấy một frame có trong video shot để làm keyframe.

* Tach audio từ video shot.

3 Xây dựng hệ thống truy van video trên bộ dữ liệu V3C1.

3.4.1.1 Mô hình TransNetV2 Để thực hiện phát hiện các phân đoạn chuyển cảnh có trong video nhóm đã sử dụng mô hình TransNetV2 [22] Về kiến trúc của mô hình TransNetV2, mô hình vẫn kế thừa ý tưởng của kiến TransNet[23] đó là sử dụng các khối tích giãn nở để trích xuất thông tin được gọi là DDCNN (Dilated DCNN) [22] Tuy nhiên kiến trúc có cải tiến thêm các khối DDCNN bằng cách thêm các lớp Conv để trích xuất thông tin trước khi đi qua các lớp DConv, mô hình còn thêm có hai nhánh được gọi là Frame Similirites as Features để mô hình có thể học được độ tương đồng giữa các frame của một shot và các shot khác nhau.

‘Learnable ‘Avg pooling RGB hist Dense mal HHN

Dense + Rat Te ae T Ta

Hình 3.6: Kiến trúc mô hình TransNetV2 (bên trái), Khối DDCNV2 (phải trên), khối frame similarites as features có thể học được (phải dưới) ?

3 Xây dựng hệ thống truy vấn video trên bộ dữ liệu V3C1.

Dựa vào kiến trúc mô hình của TransNetV2 ở hình trên, ta có:

* Đầu vào của mô hình: Video (chuỗi thứ tự các frame của video)

+ Đầu ra của mô hình: Các keyframe của video và các shotboudary

Khối DDCNV2: ở mô hình TransNet, các khối chính để xây dựng nên mô hình là các khối DDCN được thiết bằng 4 lớp DConv chạy song song với nhau. Mỗi lớp DCN sẽ có một hệ số giản nở khác nhau lần lượt là 1, 2, 4, 8 và kết quả của các lớp sẽ được nối lại với nhau theo chiều kênh để đưa ra đầu ra cuối cùng. Với cách tiếp cận này có thể giảm đi đáng kể số lượng tham số cần học so với việc sử dụng các lớp Conv thông thường.[23] Còn ở mô hình TransNetV2, khối DDCNV2 có một số thay đổi cụ thể như sau Thay vi sử dung 4 lớp DConv với tỉ lệ giản nở khác nhau, khối DDCNV2 chia các lớp DConv có kích thước k x k x k thành hai phần, đầu tiên là các lớp Conv có kích thước là 1 x k x k, tiếp theo sau đó là các lớp DConv có kích thước là k x 1 x 1 Với cách thiết kế như vậy giúp cho mô hình có thể học được các trích xuất các đặc tính từ ảnh và đặc tính thứ tự của các ảnh trong video một cách riêng biệt Hơn nữa, nêu các lớp Conv được dùng với số lượng ít thì lớp DConv sẽ giảm số lượng tham số học được, điều này có thể làm giảm quá trình overfitting trong quá trình huấn luyện [22]

?T SouYcek and J LokoTMc, “Transnet v2: An effective deep network architec-ture for fast shot transition detection,”arXiv preprint arXiv:2008.04838,2020.[22]

3 Xây dựng hệ thống truy vấn video trên bộ dữ liệu V3C1.

Conv Conv Conv Conv 3x1x1 3x1x1 || 3x1x1 || 3x1x1 dilation 1 | (dilation 2 | | dilation 4 } | dilation 8

Hình 3.7: Kiến trúc khối DDCNV2.3

Dùng sự tương đồng giữa các khung hình như là một đặc trưng (Frame similarities as features): Trong kiến trúc của TransNetV2 có thêm hai khối dùng để trích xuất thông tin về mặt tương đồng giữa các frame có trong video, một khối sử dụng trích xuất đặc trưng thủ công để khai thác đặc trưng về tương đồng màu sắt và một khối sử dụng phương pháp learning để khai thác đặc trưng tương đồng cấp cao [22]

3T SouYcek and J LokoTMc, “Transnet v2: An effective deep network architec-ture for fast shot transition detection,”arXiv preprint arXiv:2008.04838,2020.[22]

3 Xây dựng hệ thống truy van video trên bộ dữ liệu V3C1.

Hình 3.8: Kiến trúc khối khai thác đặc trưng tương đồng cấp cao bằng cơ chế học sâu.

3.4.1.2 Quá trình tiền xử lý dữ liệu Đầu tiên nhóm thực hiện sử dụng mô hình TransNetV2 để phát hiện các shot boundary và keyframe của các video trong bộ dữ liệu Sau đó, từ nhóm sẽ sử dụng keyframe để xây dụng các m6-dun tìm kiếm bằng văn bản và dùng shot boundary để tách âm thanh của các video shot để xây dựng mô-đun tìm kiếm bằng loại âm thanh. ŠT Sou” cek and J LokoTMc, “Transnet v2: An effective deep network architec-ture for fast shot transition detection,”arXiv preprint arXiv:2008.04838,2020.[22]

3 Xây dựng hệ thống truy van video trên bộ dữ liệu V3C1.

Hình 3.9: Quá trình tiền xử lý dữ liệu.

CLIP 2 ae 45

CLIP bao gồm có hai encoder, một encoder dành cho ảnh sử dụng mô ViT để encode ảnh và một encoder sử dụng mô hình GPT để encode văn bản.

3 Xây dựng hệ thống truy vấn video trên bộ dữ liệu V3C1. pepper the Text Đi lô is) TN

I, ưu | Ey To) mi |) na

I, lạTạ IpnT Ip Ts - InTy

\ ——~_ ma fi, TT; | Ist Magen) = rung

Tụ InT Tụ Ty TNT; TN'TN

Quá trình huấn luyện mô hình này diễn ra như sau Đầu tiên phần Encoder ảnh của mô hình sẽ được train phân lớp trên một bộ data rất lớn để khởi tạo trọng số của mô hình Tương tự với Encoder ảnh, phần Encoder của text cũng được huấn luyện trên một tác vụ khác để tạo trọng số cho mô hình Sau đó các Encoder sẽ được fine-tuning lại để kết quả đầu ra là vector có kích thước là 512 chiều Cuối cùng mô hình sẽ được train trên tập data gồm 300 triệu ảnh, mỗi anh sẽ kèm với một câu mô tả Mô hình CLIP sẽ học cách sao cho tích của hai vector đầu ra của ảnh và câu mô tả tương ứng với nhau sẽ là lớn nhất so với tích của vector đầu ra của ảnh so với câu mô tả khác và ngược lại.[24]

A Radford, J W Kim, C Hallacy, A Ramesh, G Goh, S Agarwal,G Sastry, A Askell, P.

Mishkin, J Clark,et al., “Learning transfer-able visual models from natural language supervision,”arXiv preprintarXiv:2103.00020, 2021 [24]

3 Xây dựng hệ thống truy vấn video trên bộ dữ liệu V3C1.

FAISS 0 000000 0s 47

FAISS [25] là một bộ thư viện do Facebook phát triển được dùng nhiễu trong các hệ thống truy vấn thông tin FAISS được dùng phổ biến vì nó có thể rút gọn không gian tìm bằng các thuật toán máy học Ngoài ra FAISS hỗ trợ sử dụng GPU để tính toán từ đó tăng tốc độ tìm kiếm.

IndexFlatL2: là độ đo L2 (hay còn có tên gọi khác là khoảng cách Eu- clidean) là khoảng cách giữa hai điểm trong không gian vector Đây là phương pháp truy vấn phổ biến có độ chính xác cao nhưng thực thi lâu.

Lượng tử hóa (Quantization): Dé rút gọn không gian tìm kiếm thư viện có một cơ chế được gọi là Quantization để giảm không gian tìm kiếm xuống. ằ Đầu tiờn, cỏc vector sẽ được chia thành cỏc vector con nhỏ

* Tiếp theo, với mỗi vector con, sẽ áp dụng thuật toán gom nhóm (clustering) để tạo ra các điểm trung tâm (centroids) cho mỗi vector con.

* Cuối cùng, thực hiện thay thé các vector trong không gian tìm kiếm bằng cách thay các vector con của vector gốc bằng các id của điểm trung tâm gần với vector con nhất

3 Xây dựng hệ thống truy vấn video trên bộ dữ liệu V3C1. vector; x Codebook

Hình 3.11: Quá trình Quantization của thư viện FAISS 7

3.4.2.3 Quá trình xây dựng mé-dun

Sau khi đã có các keyframes từ quá trình tiền xử lý dữ liệu, nhóm sử dụng

Encoder ảnh của mô hình CLIP dùng để rút trích thông tin từ các keyframe Tiếp đến, nhóm sử dụng thư viện FAISS để làm giảm không gian tìm kiếm, thực hiện đánh chỉ mục cho các keyframe bằng vector đặc trưng sau khi rút gọn và lưu vào một cơ sở dữ liệu.

Nhóm sử dung Encoder văn bản của mô hình CLIP để xây dựng công cụ tìm kiếm của mô-đun Khi người dùng nhập vào một đoạn văn bản, Encoder văn bản của mô hình sẽ tiếp nhận đầu vào và Encode thành vector đặc trưng Cuối cùng, vector đặc trưng này sẽ được rút gọn thành vector có cùng số chiều với các vector đặc trưng được lưu trữ trong cơ sở dữ liệu trong quá trình rút trích đặc trưng keyframe được nêu ở trên để thực hiện quá trình truy vấn và trả về kết quả cho người dùng.

7https://www.youtube.com/watch?v=SKrHs03i08Qlist=PLK QB 14e0EJUWaTnwgQogJ3nSLZEFNn9d8

Xây dựng Module Scene-lextsearch

3.4.3 Xây dung Module Scene-Text search

Như đã đề cập về bộ dữ liệu V3CI ở các phan trước, có khoảng 11% số keyframe có xuất hiện văn bản [2], vì thế việc áp dụng các mô hình phát hiện và nhận diện văn bản sẽ giúp ích cho chúng ta trong việc giảm không gian tìm kiếm cũng như thời gian tìm kiếm.

PaddleOCR là mô hình state-of-the-art về Optical Character Recognition (OCR) được giới thiệu vào tháng 9 năm 2020 va phát triển bởi đội ngũ ở tập đoàn Baidu dựa trên deep learning framework PaddlePaddle (Parallel Dis- tributed Deep Learning) Đây là một framework siêu nhẹ hỗ trợ đa ngôn ngữ, lên đến 27 ngôn ngữ vào thời điểm tháng 3 năm 2021 Độ chính xác của framework này cũng từ 62.88% đến 69.33% chỉ với số lượng tham số từ 3.5 triệu để nhận diện 6622 chữ Hoa ngữ cho đến 2.8 triệu để nhận diện 63 chữ số Latin [26].

3 Xây dựng hệ thống truy vấn video trên bộ dữ liệu V3C1.

Hình 3.12: Kết quả từ framework PaddleOCR.Š

Hệ thống này còn cung cấp nhiều mô hình khác nhau cho từng giai đoạn chính như phát hiện (detection), nắn thẳng (recify) hay nhận diện (recognition), ở hình 3.13 thể hiện luỗng xử lí của PaddleOCR Hệ thống này còn áp dung 19 chiến thuật ở 8 mặt khác nhau bao gồm trong việc lựa chọn mô hình làm khung sường (backbone network selection) và hiệu chỉnh (adjustment), thiết kế các đầu dự đoán (design prediction head), tăng cường dữ liệu (data augmentation), các chiến lược tỉnh chỉnh độ học (learning rate transformation strategy), chính quy hóa việc lựa chọn các tham số (regularization parameter selection), sử dung các model pre-trained, tự động kết hợp các model (automatic model tailoring), và lượng tử hóa để tối ưu (quantization to optimize) và làm gọn các mô hình của từng giai đoạn [26] Kết quả của việc này chính là một mô hình siêu nhẹ phục

Shttps://github.com/PaddlePaddle/PaddleOCR

3 Xây dựng hệ thống truy van video trên bộ dữ liệu V3C1. vụ OCR cho tiếng Anh và tiếng Hoa Framework này cũng được tối ưu sử dụng GPU để tăng tốc độ cũng như hiệu quả tính toán sẽ khiến PaddleOCR càng trở thành một lựa chọn lý tưởng để ta giải quyết vấn đề nhận diện văn bản trên bộ dữ liệu lớn V3C1. es [ODM OEM]

Ea foe? | il pa ae

Text Detection Detection Boxes Rectify Text Recognition a

Image LH A (db mv3 slim, 14M) gma (dircls mv3 slim, 0.5M) famad (crnn_mv3_slim, 15M) mal Cutpu it

1 Light Backbone 1 Light Backbone 1 Light Backbone

2 Light Head 2 Data Augmentation 2 Data Augmentation

3 Remove SE 3, Input Resolution 3 Cosine Learning Rate Decay

4 Cosine Learning Rate Decay 4, PACT Quantization 4, Feature Map Resolution

5 Learning Rate Warm-up 5 Regularization Parameters

6 FPGM Pruner 6 Learning Rate Warm-up

Hình 3.13: Tổng quan về framework PPOCR.?

Nhưng ta cần lưu ý rằng, bài toán OCR và bài toán Scene-Text Recognition (STR) có vẻ giống nhau nhưng thật chất OCR sẽ tập trung vào nhận diện các văn bản có cấu trúc, trình tự rõ ràng Còn lại với STR sẽ khó hơn rất nhiều, chúng ta sẽ phải nhận điện văn bản ở thực tế như thông tin của các biển báo, cửa hiệu, mà không theo một cấu trúc cụ thể nào Hình 3.16 là ví du về STR được lấy ra từ bộ dataset ICDAR 2019 [27] và hình 3.12 là một ví dụ về bài toán OCR, kêt quả được lấy từ PaddleOCR Ỏ bộ V3CI, theo như [2] thì lượng văn bản được xuất hiện khá nhiều nhưng không có dé cập đến chủ yếu sẽ liên quan đến bài toán OCR hay STR vì thế nếu lựa chọn mô hình hay framework chỉ chú trọng một trong hai có thé dẫn dén kết quả không tốt hay thậm chí sai lệch khiến việc truy °https://github.com/PaddlePaddle/PaddleOCR/blob/release/2.0/doc/ppocr pramework png

3 Xây dựng hệ thống truy van video trên bộ dữ liệu V3C1. vấn và lọc các kết quả trở nên khó khăn vô cùng PaddleOCR được huấn luyện từ nhiều bộ dữ liệu khác nhau về nhận diện văn bản, số lượng dữ liệu lên đến 17.9 triệu ảnh cho tiếng Trung và 15 triệu ảnh cho chữ số Latin, có bao gồm cả các trường hợp thuộc về OCR, STR và luôn cả dữ liệu nhân tạo (synthesis data).

Số lượng đữ liệu được huấn luyện dồi dào cùng với độ chính xác tốt sẽ khiến đây là một lựa chọn lý tưởng.

Hình 3.14: Một số ví du lấy từ dataset ICDAR2019.!° Ưu điểm

* Da dạng ngôn ngữ nhận dạng như tiếng Trung, tiếng Anh, chữ số. s Tối ưu trong việc sử dung GPU.

+ Nhiều lựa chon mô hình, các mô hình được huấn luyện với bộ dữ liệu dồi đào các tình huống khác nhau.

* Độ chính xác ổn từ 62.88% đến 69.33%.

ION, Nayef, Y Patel, M Busta, P N Chowdhury, D Karatzas, W Khlif,J Matas, U Pal, J.-C.

Burie, C.-1 Liu,et al., “Icdar2019 robust read-ing challenge on multi-lingual scene text detection and recognition—rrc-mlt-2019,” in2019 International Conference on Document Analysis andRecognition (ICDAR), pp 1582-1587, IEEE, 2019 [27]

3 Xây dựng hệ thống truy van video trên bộ dữ liệu V3C1.

5 Việc cài đặt tương đối phức tap.

* Tốc độ nếu chỉ sử dụng thuần CPU sẽ chậm hơn so với các framework khác như Tesseract hay EasyOCR.

ElasticSearch là một một search engine mã nguồn mở được dựa trên nền tang Lucene Apache Nếu có thắc mắc ElasticSearch khác gì Lucene Apache thì ta có thể nôm na so sánh rằng Lucene Apache như động cơ của chiếc xe và ElasticSearch chính là chiếc xe đó Ta chỉ cần biết cách lái chiếc xe là đủ, và không cần biết cách động cơ hoạt động như thế nào Mặc dù vậy, nhưng khi xe hỏng thì ta biết có kiến thức về động cơ vẫn sẽ tốt hơn.

Media Ass (DAM, File S ets

Upload data to database (MySQL, MongoDB )

Hình 3.15: Sơ lược về kiến trúc một hệ thống sử dụng ElasticSearch kèm theo một số database khác !2

12https://topdev.vn/blog/elasticsearch-la-gi/

3 Xây dựng hệ thống truy vấn video trên bộ dữ liệu V3C1.

ElastichSearch hoạt động như một web server có khả năng tìm kiếm nhanh chóng (near realtime) qua giao thức RESTful đồng hành với bản thân là một hệ thống phân tán có khả năng mở rộng theo chiều ngang (horizontal scaling) một cách mạnh mẽ Điều này đồng nghĩa với việc ElasticSearch sẽ chạy trên server riêng hay một môi trường riêng biệt và không phụ thuộc vào client hay hệ thông hiện tại mà người sử dụng đang xây dựng Với những khả năng này sẽ khiến cho công việc của người sử dụng trở nên dé dang hơn bao giờ hết Bên cạnh đó, ElasticSearch còn hỗ trợ tìm kiếm mờ (fuzzy search), tức là từ khóa tìm kiếm có thể bị sai lỗi chính tả hay không đúng cú pháp thì vẫn có khả năng trả về kết quả tốt Đây là một điểm đáng lưu ý khi áp dụng vào hệ thống của chúng ta bởi vì các kết quả trích xuất được từ PaddleOCR có thé sẽ không chính xác tuyệt đối như những gì ta thấy Điểm này sẽ giúp ích cho việc trả về các kết quả có liên quan mà ta cần tìm kiếm Khả năng phân tích và thống kê dữ liệu cũng là một tính năng hữu ích của ElasticSearch, đặc biệt đối với nhiều trường họp cần hiểu biết, phân tích hay đánh giá về dữ liệu.

Các khái niệm cần thiết về ElasticSearch

* Document là một JSON object với một số dữ liệu Đây là một trong những đơn vi nhỏ nhất để lưu trữ dữ liệu của ElasticSearch.

+ Index ElasticSearch sử dụng cấu trúc gọi là inverted index, các văn bản được phân tách ra thành từng từ có nghĩa sau đó sẽ được map xem thuộc văn bản nào. Ưu điểm

* Tìm kiếm dữ liệu nhanh chóng. ằ Cú khả năng phõn tớch dữ liệu.

* Khả năng mở rộng theo chiều ngang (horizontal sclaing) mạnh mẽ do hoạt động theo Node.

3 Xây dựng hệ thống truy vấn video trên bộ dữ liệu V3C1.

+ Hỗ trợ nhiều client như Java, PHP, Javascript, Ruby, Python

+ Hỗ trợ truy vấn mờ (fuzzy search), với các từ khóa tìm kiếm bị sai lỗi hay không đúng thì vẫn có khả năng trả về tốt.

* Do tính chất được thiết kế cho mục đích tìm kiếm do vậy ngoài nhiệm vụ đấy thì ElasticSearch sẽ kém cạnh hơn so với những database khác như

* ElasticSearch không tồn tại khái niệm database transaction, tức là sẽ khong đảm bảo được toàn vẹn dữ liệu trong các hoạt động như Insert, Update,

Delete Khi thực hiện thay đổi nhiều bản ghi sẽ xảy ra lỗi làm cho logic trong hệ thống bị sai hoặc dẫn đến mắt mát dữ liệu.

+ Không thích hợp với những hệ thống thường xuyên cập nhật dữ liệu Sẽ rất tốn kém cho việc đánh dấu index dữ liệu.

3.4.3.3 Quá trình xây dựng mô-đun

Sau khi đã có shot boundary của TransNetV2, chúng tôi bắt đầu thực hiện việc nhận diện văn bản trên bộ dữ liệu V3C1 Chúng tôi không sử dụng keyframes đã có của TransNetV2 do khả năng các keyframe sẽ có đủ các văn bản xuất hiện trong shot boundary, vì thế chúng tôi sẽ lấy mỗi giây 5 frame hay 5 fps Việc này sẽ đảm bảo việc nhận diện các văn bản sẽ được đầy đủ và chính xác nhất.

Tiếp theo, chúng tôi sé thực hiện lập chỉ mục khi có kết quả các văn bản phát hiện bằng PaddleOCR Mỗi văn bản (text instance) sẽ được phát hiện sẽ được coi như một document và lần lượt được đánh chỉ mục (indexing) bằng ElasticSearch. Thực hiện phát hiện văn bản ở 5 fps sẽ khiến nhiều văn bản có thể bị trùng, việc này sẽ được giải quyết trong quá trình indexing bằng cách loại bỏ các document

3 Xây dựng hệ thống truy van video trên bộ dữ liệu V3C1. trùng nhau Khi đã hoàn thành, chúng tôi sẽ thực hiện viết API bằng cách sử dụng FastAPI để sử dụng.

Xây dựng Mô-đun truy van bằng loại âm thanh

PANNs là một mô hình gắn nhãn âm thanh được xây dựng dựa trên kiến trúc CNN Đầu vào của mô hình là ảnh spectrogram có được từ quá trình biến đổi audio thành ảnh spectrogram, đầu ra sẽ là những loại audio. âm thanh xuất hiện trong

ReLU BN, ReLU BN, ReLU | * BN, ReLU } *

MP2 x2 Pooling 2 x 2 3x3 @ 128 5x5 @ 128 3x3 @ 128 x2 3x3 @ 128 x2 ReLU BN, ReLU BN, ReLU BN, ReLU

ReLU BN, ReLU BN, ReLU BN, ReLU

ReLU ` BN, ReLU BN, ReLU j * BN, Re

MP 2x2 ° Flatten Global pooling Pooling 2 x 2 ree x2 FC 512, ReLU l§ aN RaU )* x3

FC 527, Sigmoid FC 527, Sigmoid Pooling 2 x 2

Hình 3.16: Kiến trúc mô hình PANNs.!*

Kiến trúc của mô hình bao gồm các lớp VGG nối tiếp nhau dùng để trích xuất đặc trưng của ảnh spectrogram,tiép đến là lớp global pooling và cuối cùng là hai lớp fully connected dùng để đưa ra kết quả cuối cùng.

13Kong, Qiuqiang, et al "Panns: Large-scale pretrained audio neural networks for audio pattern recognition." IEEE/ACM Transactions on Audio, Speech, and Language Processing 28 (2020): 2880-

3 Xây dựng hệ thống truy van video trên bộ dữ liệu V3C1.

3.4.4.2 Quá trình xây dựng mô-dun

Sau khi có được audio từ quá trình tiền xử lý dit liệu, nhóm thực hiện chuyển các audio về dạng ảnh spectrogram và đưa vào mô hình để gắn nhãn cho audio. Kết quả gắn nhãn cho audio sẽ được dùng làm chỉ mục cho từng audio Khi thực hiện truy vấn, người dùng sẽ chọn nhãn âm thanh mà người dùng nghe được từ video, hệ thống sẽ trả về các video-shot có audio chứa nhãn mà người dùng dùng để tìm kiếm.

Tin aig), 77° RR Paddioocr Chỉ mục re! | | amthanh | ¡ / Tuvan /

Hình 3.17: Tổng kết kiến trúc hệ thống VBS.

Qua chương này, nhóm đã giới thiệu về bộ dữ liệu V3C1 Tiếp đến nhóm đã trình bày về tổng quan về hệ thống và kiến trúc của hệ thông mà nhóm xây dung được tóm tắt như hình 3.17 Cuối cùng, nhóm cũng đã trình bày về các mô hình, phương pháp sử dụng ở hệ thống mà mô-đun chính sẽ là truy vấn bằng câu mô tả sử dụng [24] và kết hợp với FIASS [25] để tăng tốc độ tính toán, truy vấn văn bang sử dụng kết hợp PaddleOCR [26] và ElasticSearch Đồng thời để hỗ

3 Xây dựng hệ thống truy vấn video trên bộ dữ liệu V3C1. trợ của 2 mô-đun kia, chúng tôi đã kết hợp thêm mô-đun truy vấn bằng nhãn âm thanh sử dụng [28] để nhanh chóng loại bỏ các video shots không liên quan.

THỰC NGHIEM VÀ ĐÁNH GIÁ

Bài toán chúng tôi muốn thực hiện đánh giá là bài toán truy van tương tác (interactive retrieval) Ta không đơn giản chỉ sử dụng một vài kĩ thuật truy vấn đã được chứng minh để tạo ra một danh sách đã được xếp hạng có số lượng kéo dài từ vài trăm cho đến vài nghìn của các video lấy từ cơ sở dữ liệu Mà bài toán này chú trọng vào mục đích hỗ trợ người dùng tìm kiếm một cách nhanh chóng và dễ dàng bằng cách mô tả các thông tin cần thiết.

Vì thé, sau khi hoàn tất việc xây dựng hệ thống minh hoạ, chúng tôi sẽ tiến hành thực nghiệm hệ thống theo mô phỏng ở VBS 2020 trên bộ dữ liệu V3CI

[2] và tập trung vào novice visual Know-Item Search Nhắc lại về visual Know- Item Search, các thí sinh sẽ được giao nhiêm vụ tìm kiếm một shot cụ thể với độ dài khoảng 20 giây trong vòng 5 phút Shot này sẽ được trình chiếu trong suốt quá trình diễn ra thực nghiệm và thí sinh sẽ phải sử dụng hệ thống được giao cho để tìm kiếm Quá trình thao tác trên hệ thống sẽ được lưu lại và phục vụ cho mục đích nghiên cứu về bài toán truy vấn tương tác.

Thách thức của ta lúc này sẽ không những phụ thuộc từ các phương pháp được sử dụng mà còn đến từ phía người sử dụng Con người chúng ta sẽ có xu

4 Thực nghiệm và đánh giá hướng lãng quên những thứ không cần thiết chính sẽ dẫn đến mắc các lỗi khi cố gắng diễn đạt lại Vậy người sử dụng có thể nhớ được các nội dung nào có trong video cần tìm kiếm, họ sẽ tập trung vào những thông tin nào, người dùng sẽ cung cấp đầy đủ các thông tin cần thiết để hệ thống có thể tìm kiếm chính xác, Với các phương pháp truy vấn sử dụng văn bản là đữ liệu đầu vào do người dùng nhập, vậy trình độ diễn đạt hay ngôn ngữ sử dụng của họ có đủ để tạo nên câu truy van đầy đủ hay không? Hay các phương pháp sử dụng hình vẽ để khắc phục các phương pháp sử dụng từ ngữ để miêu tả thì vẫn câu hỏi tương tự, người dùng có đủ kĩ năng để vẽ chính xác hay không? Chính vì thế, ngay từ đầu ta nên thừa nhận rằng người sử dụng khó có thể cung cấp các thông tin cần thiết, đầy đủ và chính xác Mà ngược lại các thông tin được cung cấp sẽ luôn bị thiếu sót và không chính xác Các yếu tố liên quan đến người dùng, phương pháp được sử dung sẽ được chúng tôi cố gắng phân tích, tìm hiểu và đánh giá ở trong khóa luận lần này.

Như đã giới thiệu sơ lược về phương pháp thực nghiệm novice V-KIS ở phần trước thì chương này chúng ta sẽ nói chỉ tiết hơn về quá trình thực nghiệm và đánh giá. Đầu tiên, người dùng sẽ được hướng dẫn cách sử dụng hệ thống và làm quen với hệ thống Do điều kiện dịch bệnh hiện nay, chúng tôi sẽ tổ chức một buổi hướng dẫn trực tuyến kéo dài khoảng 20 phút gồm có 10 sinh viên tình nguyện tham gia giúp đỡ Các sinh viên tham gia được sẽ giải thích mục tiêu, về từng chức năng, cách kết hợp các tính năng và cũng như giải quyết một số tình huồng khi mắc phải Kết thúc buổi hướng dẫn, chúng tôi sẽ mở hệ thống trong vòng nửa ngày để các sinh viên làm quen với hệ thống Toàn bộ dữ liệu được sử dụng để làm quen sẽ bao gồm cả V3C1 [2] như ban đầu và thêm V3C2 [3] Riêng đối

4 Thực nghiệm và đánh giá

Bảng 4.1: Kết quả sau quá trình tiền xử lí Đây là số lượng video-shots mà người dùng phải thực hiện tìm kiếm. với các đáp án được sử dụng trong thời gian này sẽ nằm toàn bộ ở V3C2 để tránh các sinh viên ghi nhớ đáp án ảnh hưởng quá trình thực nghiệm.

Tiếp theo, khi quá trình làm quen kết thúc chúng tôi sẽ tiến hành cho sinh viên thực nghiệm để thu thập dữ liệu và nhận phan hồi của mỗi sinh viên để có thể cải thiện hệ thống trong tương lai Chúng tôi lựa chọn 6 shot khác nhau trong bộ dữ liệu đã được tiền xử lí V3C1 [2] để làm đáp án, mỗi shot có độ dài từ 15 đến 30 giây Không gian tìm kiếm sẽ là bộ dữ liệu đã được chúng tôi tiền xử lí, các thông tin về số lượng shot, keyframes cũng như tổng số các frames được chúng tôi thông tin lại ở bảng 4.1 Độ dài này không quá dài cũng không quá ngắn nhưng vẫn chứa đủ các nội dung để thách thức người tham gia Các sinh viên sẽ phải thực hiện tìm kiếm 6 video ở bảng 4.2 và mỗi lần thực hiện sẽ được hệ thống chọn lựa ngẫu nhiên video cần tìm kiếm với 5 phút để tìm kiếm. Khi hết thời gian, hệ thống sẽ tự động đóng lại, yêu cầu sinh viên đăng nhập lại và sẽ được giao cho tìm kiếm một video khác Ngoài ra, do gặp các vấn đề về kĩ thuật nên toàn bộ các sinh viên tham gia thực nghiệm phải thực hiện trên trình duyệt Mozilla FireFox.

4 Thực nghiệm và đánh giá

Video Các khung hình chính

Bảng 4.2: Bảng các khung hình chính được sử dụng làm đáp án cho thực nghiệm.

Sau khi hoàn tất thực nghiệm, thu thập và phân tích dữ liệu, chúng tôi có bảng 4.3 thể hiện kết quả thực nghiệm với hình thức mô phỏng V-KIS tương tự như VBS Các ô màu xanh kèm theo thời gian tìm kiếm của các thí sinh tham gia, các ô màu đỏ thể hiện thí sinh không tìm kiếm được shot trong thời gian quy định.

Nhận xét kết quả thực nghiệm:

* Việc truy vấn phụ thuộc vào sự lặp lại thông tin ở các shot Từ bảng đáp án 4.2 rằng các đoạn video có cách hành động lặp lại như VY ,VY, VY sẽ dé tìm thấy hơn Lý giải đơn giản rằng các shot có thông tin về mặt hình ảnh rõ ràng, có sự lặp đi lặp lại các thông tin vì thế khi dùng đặc trưng về mặt thị giác ta có thể dễ dàng để suy nghĩ được câu truy vấn để thực

4 Thực nghiệm và đánh giá

V-KIS I | V-KIS 2 | V-KIS 3 | V-KIS 4 | V-KIS 5 | V-KIS 6

Ngày đăng: 23/10/2024, 02:09

HÌNH ẢNH LIÊN QUAN

Hình anh 1: Minh hoa về đữ liệu đầu vào, đầu ra của hệ thống. - Khóa luận tốt nghiệp Khoa học máy tính: Tìm hiểu và xây dựng hệ thống truy vấn video trên tập dữ liệu V3C1
Hình anh 1: Minh hoa về đữ liệu đầu vào, đầu ra của hệ thống (Trang 4)
Hình 2.5: Kiến trúc của Transformer. ! - Khóa luận tốt nghiệp Khoa học máy tính: Tìm hiểu và xây dựng hệ thống truy vấn video trên tập dữ liệu V3C1
Hình 2.5 Kiến trúc của Transformer. ! (Trang 31)
Hình 2.6: Sơ đồ Scaled Dot-Product Attention. ! - Khóa luận tốt nghiệp Khoa học máy tính: Tìm hiểu và xây dựng hệ thống truy vấn video trên tập dữ liệu V3C1
Hình 2.6 Sơ đồ Scaled Dot-Product Attention. ! (Trang 33)
Hình 2.8: Kiến trúc của ViT. ! - Khóa luận tốt nghiệp Khoa học máy tính: Tìm hiểu và xây dựng hệ thống truy vấn video trên tập dữ liệu V3C1
Hình 2.8 Kiến trúc của ViT. ! (Trang 36)
Hình 2.9: Độ tương đồng cosine giữa position embedding của các patch.! - Khóa luận tốt nghiệp Khoa học máy tính: Tìm hiểu và xây dựng hệ thống truy vấn video trên tập dữ liệu V3C1
Hình 2.9 Độ tương đồng cosine giữa position embedding của các patch.! (Trang 37)
Bảng 2.1: Bảng điểm của các đội ở VBS 2020. 3 cột cuối cùng thể hiện số lượng task - Khóa luận tốt nghiệp Khoa học máy tính: Tìm hiểu và xây dựng hệ thống truy vấn video trên tập dữ liệu V3C1
Bảng 2.1 Bảng điểm của các đội ở VBS 2020. 3 cột cuối cùng thể hiện số lượng task (Trang 46)
Bảng 2.2: Thời gian truy vấn của từng tác vụ và tỉ lệ đúng của các đội. Các con số màu - Khóa luận tốt nghiệp Khoa học máy tính: Tìm hiểu và xây dựng hệ thống truy vấn video trên tập dữ liệu V3C1
Bảng 2.2 Thời gian truy vấn của từng tác vụ và tỉ lệ đúng của các đội. Các con số màu (Trang 47)
Hình 3.3: Giao diện hệ thống khi người dùng xem một shot cụ thể. - Khóa luận tốt nghiệp Khoa học máy tính: Tìm hiểu và xây dựng hệ thống truy vấn video trên tập dữ liệu V3C1
Hình 3.3 Giao diện hệ thống khi người dùng xem một shot cụ thể (Trang 55)
Hình 3.4: Giao diện hệ thống khi người dùng chuyển qua tag Audio. - Khóa luận tốt nghiệp Khoa học máy tính: Tìm hiểu và xây dựng hệ thống truy vấn video trên tập dữ liệu V3C1
Hình 3.4 Giao diện hệ thống khi người dùng chuyển qua tag Audio (Trang 56)
Hình 3.5: Giao diện hệ thống khi người dùng muốn tham khảo thêm một số các shot - Khóa luận tốt nghiệp Khoa học máy tính: Tìm hiểu và xây dựng hệ thống truy vấn video trên tập dữ liệu V3C1
Hình 3.5 Giao diện hệ thống khi người dùng muốn tham khảo thêm một số các shot (Trang 57)
Hình 3.9: Quá trình tiền xử lý dữ liệu. - Khóa luận tốt nghiệp Khoa học máy tính: Tìm hiểu và xây dựng hệ thống truy vấn video trên tập dữ liệu V3C1
Hình 3.9 Quá trình tiền xử lý dữ liệu (Trang 62)
Hình 3.10: Mô hình CLIP. ° - Khóa luận tốt nghiệp Khoa học máy tính: Tìm hiểu và xây dựng hệ thống truy vấn video trên tập dữ liệu V3C1
Hình 3.10 Mô hình CLIP. ° (Trang 63)
Hình 3.13: Tổng quan về framework PPOCR.? - Khóa luận tốt nghiệp Khoa học máy tính: Tìm hiểu và xây dựng hệ thống truy vấn video trên tập dữ liệu V3C1
Hình 3.13 Tổng quan về framework PPOCR.? (Trang 68)
Hình 3.17: Tổng kết kiến trúc hệ thống VBS. - Khóa luận tốt nghiệp Khoa học máy tính: Tìm hiểu và xây dựng hệ thống truy vấn video trên tập dữ liệu V3C1
Hình 3.17 Tổng kết kiến trúc hệ thống VBS (Trang 74)
Hình 4.1: Ví dụ sự trùng lặp ở các shot cùng một video. - Khóa luận tốt nghiệp Khoa học máy tính: Tìm hiểu và xây dựng hệ thống truy vấn video trên tập dữ liệu V3C1
Hình 4.1 Ví dụ sự trùng lặp ở các shot cùng một video (Trang 81)

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

TÀI LIỆU LIÊN QUAN