1. Trang chủ
  2. » Giáo Dục - Đào Tạo

BÁO CÁO HỆ CƠ SỞ DỮ LIỆU ĐA PHƯƠNG TIỆN ĐỀ TÀI Xây dựng hệ CSDL lưu trữ và tìm kiếm ảnh nhân vật hoạt hình

22 13 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

Định dạng
Số trang 22
Dung lượng 1,81 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Trình bày các thuộc tính được sử dụng để nhận dạng ảnh nhân vật hoạt hình trong hệ thống, cùng 5.. Trình bày cách lưu trữ và quản lý các thuộc tính ảnh nhân vật hoạt hình và cách nhận dạ

Trang 1

HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG

KHOA CÔNG NGHỆ THÔNG TIN

BÁO CÁO

HỆ CƠ SỞ DỮ LIỆU ĐA PHƯƠNG TIỆN

ĐỀ TÀI Xây dựng hệ CSDL lưu trữ và tìm kiếm ảnh nhân vật

Trang 2

các kỹ thuật để trích rút các thuộc tính đó

MỤC LỤC

2 Hãy tìm hiểu các kỹ thuật xử lý và tìm kiếm ảnh hiện hành 8

3 XÂY DỰNG HỆ THỐNG NHẬN DẠNG VÀ TÌM KIẾM ẢNH NHÂN VẬT HOẠT HÌNH 14

4 Trình bày các thuộc tính được sử dụng để nhận dạng ảnh nhân vật hoạt hình trong hệ thống, cùng

5 Trình bày cách lưu trữ và quản lý các thuộc tính ảnh nhân vật hoạt hình và cách nhận dạng, tìm kiếm các ảnh trong CSDL dựa trên các thuộc tính đó 19

Trang 3

A Trình bày về dữ liệu (Kết quả sưu tầm)

Trang 4

các kỹ thuật để trích rút các thuộc tính đó

v Hunter X Hunter : 1

vi One Piece : 1

vii Fairy Tail : 1

viii Dr.Stone : 1

ix Haikyuu!! : 1

x Toriko : 1

xi Shokugeki no Soma : 1

d Số ảnh của mỗi nhân vật hoạt hình:

Trang 5

STT Tên nhân vật Số ảnh Tên Phim

Trang 6

các kỹ thuật để trích rút các thuộc tính đó

Link: https://drive.google.com/drive/folders/13RQBFJcABu6fJPTRLJrwtlRuwrwEWlTN

Trang 7

Đặc điểm:

Đặc trưng các ảnh

- Về đối tượng:Nhân vật hoạt hình.

+ Hình dạng: hình dáng tư thế, chân dung , cận mặt của nhân vật

+ Màu sắc: Ảnh nhân vật hoạt hình thì có 1 vài màu sắc chủ đạo và là màu cơ bản và tách biệt

rõ ràng về màu sắc trên đối tượng

- Nền:

Ảnh của các nhân vật hoạt hình đã được tách nền, chỉ còn để lại chủ thể là các nhân vật hoạt hình

- Kết cấu ảnh:

Giống nhau : Mỗi bức ảnh đều có 1 đối tượng là 1 nhân vật hoạt hình

Về hình dáng và màu sắc của nhân vật kết cấu trong mỗi bức ảnh có thể giống nhau.

Trang 8

các kỹ thuật để trích rút các thuộc tính đó

Ví dụ

Kid có màu tóc đen và luôn mắc vest trong khi Senku có màu tóc trắng

Màu sắc chủ đạo của bức ảnh (màu sắc đặc trưng của nhân vật hoạt hình),

Ví dụ :

Khác nhau ở kết cấu của bức ảnh ( độ tương phản, entropy, độ đồng nhất, tổng trung bình xác suất của các mức xám, …)

→ Do các nhân vật có những đặc trưng về màu sắc riêng nên ma trận màu, véc-tơ màu

của các nhân vật cũng sẽ khác nhau Bọn em sử dụng thuộc tính màu sắc cho bài toán này

Trang 9

A Hãy tìm hiểu các kỹ thuật xử lý và tìm kiếm ảnh hiện hành.

Elasticsearch và quá trình phân tích dữ liệu

Elasticsearch

Như chúng ta đã biết thì Elasticsearch là một open-source search engine rất nổi tiếng hỗ

trợ cho việc tìm kiếm cho hệ thống của bạn Được xây dựng trên apache lucene (một thư

viện mã nguồn mở để xây dựng các search engine), Elasticsearch hoạt động độc lập như

một server đồng thời giao tiếp thông qua RESTful do vậy, bất kể hệ thống bạn viết bằng

ngôn ngữ gì Elasticsearch đều có thể sử dụng được.

Sử dụng Elasticsearch

Elasicsearch có khả năng mở rộng rất mạnh mẽ, bạn có thể cài đặt để nó lưu dữ liệu dưới dạng phân tán thành nhiều server và khi có một server down thì Elasictsearch có thể tự động khôi phục dữ liệu của server đó, xem thêm các khái niệm về cluster, node,

shards , chính vì thế bạn có thể sử dụng Elasticsearch như một database Tuy

nhiên Elasticsearch chỉ mạnh mẽ ở việc truy suất và tìm kiếm dữ liệu, còn việc thêm mới

/ sửa / xóa dữ liệu thì kém xa các database khác như Mysql, Postgres nên khuyến khích

chỉ sử dụng Elasticsearch để lưu trữ các dữ liệu cần search và kết hợp với một database

khác để lưu trữ dữ liệu.

Về nguyên tắc sử dụng thì hệ thống của bạn sẽ gửi các dữ liệu cần search lên server

Elasicsearch thông qua http request, các dữ liệu này sẽ được lưu dưới dạng các

documents, đồng thời dữ liệu sẽ được đánh index giống các database khác để tăng tốc độ

tìm kiếm, nhưng khác với các database khác, Elasticsearch , sử dụng một cấu trúc được

gọi là inverted index - khác với Btree của Mysql, dữ liệu sẽ được tách ra thành các token và được lưu lại,

Trang 10

các kỹ thuật để trích rút các thuộc tính đó

Trang 11

Analysis là gì?

Analysis là một quá trình được tự động thực hiện để phân tích dữ liệu trước khi lưu

vào inverted index trong Elasticsearch sử dụng các analyzer Ví dụ khi phân tích một

đoạn text, quá trính này sẽ thực hiện các bước sau:

Character filtering—Chuyển đổi các ký tự sử dụng character filter

Breaking text into tokens—Tách đoạn text thành tập hợp các token

Token filtering—Biến đổi các token sử dụng token filter

Token indexing—Và cuối cùng là lưu các token đó vào inverted index

Trước khi đi vào chi tiết của từng bước, hình dưới đây sẽ mô tả tổng quan quá trình

phân tích của đoạn text có nội dung "share your experience with NoSql & big data technologies" sử dụng một analyser gồm một chararacter filter, một tokenizer, và 3

token filters

Trang 12

các kỹ thuật để trích rút các thuộc tính đó

Bước 1: Character filtering

Đây là bước đầu tiên của quá trình analysis, ở bước này, các ký tự sẽ được chuyển đổi thành dữ liệu cho phù hợp với yêu cầu search của bạn sử dụng các Character filters , quá trình nãy sẽ giúp bạn xử lý cho các trường hợp như muốn loại bỏ các thẻ/ký tự của HTML trong đoạn text, chuyển các ký tự thành từ có nghĩa như “I love u 2” thành “I love you too” Ở ví dụ trên charater filter đã chuyển đổi ký tự "&" thành từ "and", vì vậy khi bạn tìm kiếm với từ khóa

"and" thì dữ liệu chứa ký tự "&" sẽ được liệt kê ra, một điều khó có thể thực hiện khi search với các câu lệnh sql

Bước 2: Breaking into tokens

Sau khi đoạn text đã được xử lý chuyển đổi các ký tự xong, nó sẽ được phân tách thành các tokens độc lập sử dụng các tokenizers Elasitcsearch cung cấp rất nhiều tokenizers để phục

vụ cho yêu cầu bài toán của bạn, ví dụ như whitespace tokenizer sẽ tách đoạn text thành

các tokens dựa váo các khoảng trắng whitespace: "artic region" sẽ output ra 2

token artic, region, hoặc letter tokenizer sẽ tách đoạn text thành các token dựa vào

whitespace và các ký tự đặc biệt: "sun-asterisk company" sẽ có output là 3 tokens sun,

asterisk, company

Bước 3: Token filtering

Sau khi đoạn text được tách và cho ra output là các tokens, các tokens này sau đó sẽ được đưa vào một hoặc nhiều các Token filters , tại đây các tokens sẽ được xóa bợt, thêm hoặc chỉnh sửa tùy vào loại token filter Các token này sẽ hữu ích trong trường hợp bạn muốn chuyển các token về dạng lowercase và ngược lại, hoặc có thể thêm token mới "tools" như ở ví dụ trên Một analyzer có thể có không hoặc nhiều token filters

Bước 4: Token indexing

Sau khi các token đã đi qua 0 hoặc nhiều token filters chúng đã được gửi tới Lucene để được lập đánh index Một analyzer sẽ bao gồm không hoặc nhiều character filters, một tokenizer, và không hoặc nhiều token filters

Tùy thuộc vào loại query bạn sử dụng, analyzer này cũng có thể được áp dụng cho tìm kiếm văn bản trước khi search được thực hiện Đặc biệt, các query chứa các truy vấn match và match_phrase thực hiện analysis trước khi thực hiện tìm kiếm, để xử lý dữ liệu trước, nhờ vậy thì kết quả tìm kiếm trả về sẽ chính xác hơn và việc tìm kiếm cũng nhanh hơn.

Trang 13

Ưu điểm và nhược điểm của Elasticsearch

Ưu điểm của Elasticsearch

B Làm một công cụ được phát triển dựa trên nền tảng Apache Lucene xử lý dữ liệu mạnh

mẽ gần với thời gian thực – near-real time

C Không chỉ tìm kiếm dữ liệu, Elasticsearch còn hỗ trợ phân tích dữ liệu

D Khả năng mở rộng rất mạnh mẽ và tuyệt vời

E Hỗ trợ nhiều ngôn ngữ lập trình khác nhau cho các lập trình viên trở nên thoải mái hơn

F Hỗ trợ Structured Query DSL để cung cấp các đặc tả cho những truy vấn phức tạp một cách rõ ràng và cụ thể bằng JSON.

G Có thể tìm kiếm bằng nhiều loại ngôn ngữ khác nhau.

Trang 14

các kỹ thuật để trích rút các thuộc tính đó

H Nhược điểm của Elasticsearch

I Không phải là một công cụ toàn năng, vì thế, Elasticsearch cũng có một số nhược điểm đáng chú ý Khi sử dụng, bạn nên chú ý một số điểm như:

J.

K Elasticsearch được thiết kế cho mục đích tìm kiếm là chính Do đó, đối với những nhiệm vụ, chức năng khác, Elasticsearch sẽ đáp ứng kém hơn so với những phần mềm, công cụ chuyên dụng khác.

L Đối với một số truy vấn nặng, độ trễ của Elasticsearch sẽ tăng rất nhiều lần.

M Để khai thác được chức năng của Elasticsearch một cách tối ưu nhất, bạn sẽ cần:

N Có rất nhiều kiến thức chuyên môn

Trang 15

O Thông thạo ngôn ngữ lập trình Java

Trang 16

các kỹ thuật để trích rút các thuộc tính đó

P Một trong những điểm đáng lưu tâm khác: Elasticsearch không có khái niệm

database transaction Vì thế, tính toàn vẹn của dữ liệu sẽ không được đảm bảo và bạn

không nên sử dụng vào database chính của mình.

Q Nếu ứng dụng, hệ thống của bạn cần phải thường xuyên cập nhật dữ liệu, Elasticsearch

sẽ bộc lộ nhược điểm gây tốn kém tài nguyên cho việc index dữ liệu

T + Tạo kho dữ liệu ảnh nhân vật hoạt hình

U + Trích xuất đặc trưng của từng bức ảnh trong kho dữ liệu ảnh nhân vật hoạt hình

V + Lưu các đặc trưng được trích xuất thành các vector

W Luồng truy vấn

X + Nhập ảnh cần tìm kiếm

Y + Trích xuất đặc trưng của ảnh đó và lưu vào một vector

Z Luồng so sánh

Trang 17

AA + So sánh độ tương đồng hoặc khoảng cách giữa vector của ảnh cần truy vấn với các vector được trích xuất ra từ kho dữ liệu

DD Trình bày các thuộc tính được sử dụng để nhận dạng ảnh nhân vật hoạt hình

trong hệ thống, cùng các kỹ thuật để trích rút các thuộc tính đó.

b Tiền xử lý

màu HSV để tăng độ chính xác cho bài toán nhận diện ảnh dựa trên màu sắc Vậy nên, chuyển đổi ảnh RGB sang HSV.

HSV theo công thức dưới đây:

Trang 18

biệt giữa hình ảnh với sự phân bố màu sắc khác nhau đáng kể.

1.

có nội dung khác nhau mặc dù ở thực tế chúng là giống nhau.

Trang 19

4.

5.

HH => Vectơ đặc trưng có 3 x 12 x 8 = 288 phần tử.

nhất của nhiếp ảnh Chúng ta thường tập trung các bức ảnh của mình vào đối tượng để làm cho bức ảnh trở nên thẩm mỹ nhất có thể Vậy nên, chia hình ảnh thành 5 vùng: góc trên trái, góc trên phải, góc dưới phải, góc dưới trái và trung tâm của hình ảnh.

i.

Trang 20

các kỹ thuật để trích rút các thuộc tính đó

không muốn tính toán Tại các điểm ảnh có giá trị 255 (màu trắng) thì mới được đưa vào tính toán biểu đồ, các điểm ảnh có giá trị 0 (màu đen) thì bỏ qua.

iii.

iv.

sử dụng hình ảnh muốn trích xuất đặc trưng làm đối số đầu tiên, mặt nạ đại diện cho vùng muốn mô tả làm đối số thứ 2 Biểu đồ trả về là biểu đồ biểu diễn cho vùng hiện tại và bình thường hóa biểu đồ màu và lưu vào danh sách vectơ đặc trưng.

sang xác xuất Để mỗi biểu đồ được biểu thị bằng tỷ lệ phần trăm tương đối cho một bin cụ thể chứ không phải số nguyên cho mỗi bin Và các hình ảnh có nội dung tương tự nhưng kích thước khác nhau đáng kể vẫn

sẽ là tương tự nhưmột khi chúng ta áp dụng chức năng tương tự.

Mỗi phần được biểu thị bằng 1 biểu đồ với 8 x 12 x 3 = 288 phần tử (tương ứng với vector đặc trưng cho từng vùng với 288 chiều) Nối 5 vector đặc trưng trên lại với nhau ta thu được vectơ đặc trưng của hình ảnh với 288 x 5 = 1440 chiều.

KK - Từ vectơ đặc trưng, nhóm xây dựng chỉ mục phục vụ cho nhận diện ảnh gồm có id_image và vectơ đặc trưng.

Trang 21

LL Trình bày cách lưu trữ và quản lý các thuộc tính ảnh nhân vật hoạt hình và

cách nhận dạng, tìm kiếm các ảnh trong CSDL dựa trên các thuộc tính đó.

a Lưu trữ và quản lý các thuộc tính

a - Sau khi trích xuất đặc trưng thì dữ liệu của mỗi bức ảnh sẽ được lưu vào

một vector và các vector này được lưu và xuất ra files csv

b Truy vấn ảnh

trong CSDL iv.

v.

vi.

CSDL thì nhóm tính bình phương khoảng cách giữa vectơ đặc trưng của ảnh truy vấn và ảnh trong CSDL.

NN.

0 Trong đó: 𝑎𝑖, 𝑏𝑖 lần lượt là từng giá trị của vectơ đặc trưng A ,

a Beps = 1e-10 để tránh việc chia cho 0

a n số chiều của vector đặc trưng (trong bài n = 1440)

1 Giải thích: Công thức dựa trên thống kê kiểm tra chi bình phương của Pearson được sử dụng để so sánh phân phối xác suất rời rạc Do đang so sánh biểu đồ màu theo phân phối xác suất xác định nên hàm chi bình phương sẽ cho kết quả tốt hơn cả

Trang 22

các kỹ thuật để trích rút các thuộc tính đó

giống nhau hơn

vấn ở đầu danh sách)

Ngày đăng: 13/08/2022, 18:01

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w