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

Báo cáo Đồ Án nhập môn thị giác máy tính Đề tài truy xuất hình Ảnh Động vật dựa vào Đặc trưng

25 3 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 đề Truy xuất hình ảnh động vật dựa vào đặc trưng
Tác giả Đoàn Vũ Phú Minh, Nguyễn Thọ Quang, Nguyễn Phan Anh Minh
Người hướng dẫn GV Mai Tiến Dũng
Trường học Trường Đại Học Công Nghệ Thông Tin – ĐHQG TP.HCM
Chuyên ngành Công Nghệ Thông Tin
Thể loại Đồ án
Năm xuất bản 2024
Thành phố Hồ Chí Minh
Định dạng
Số trang 25
Dung lượng 0,94 MB

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

Nội dung

Đồ án này đặt ra mục tiêu xây dựng một hệ thống truy xuất hình ảnh động vật dựa vào các đặc trưng nổi bật của chúng.. Mô tả bài toán Bài toán của đề tài là xây dựng một hệ thống truy xu

Trang 1

-

BÁO CÁO

ĐỒ ÁN NHẬP MÔN THỊ GIÁC MÁY TÍNH

ĐỀ TÀI: Truy xuất hình ảnh động vật dựa vào đặc trưng

SV THỰC HIỆN : Đoàn Vũ Phú Minh – 22520859 Nguyễn Thọ Quang – 22521204 Nguyễn Phan Anh Minh – 22520878 LỚP : CS231.O22 – VN

HỒ CHÍ MINH, 6-2024

Trang 2

NHẬN XÉT CỦA GIẢNG VIÊN

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

Trang 3

LỜI MỞ ĐẦU

THÔNG TIN CÁC THÀNH VIÊN

CHƯƠNG 1 TỔNG QUAN 1

1.1 Mô tả bài toán 1

1.2 Lý do chọn đề tài 1

1.3 Phát biểu bài toán 1

CHƯƠNG 2 CÁC PHƯƠNG PHÁP GIẢI QUYẾT BÀI TOÁN 3

2.1 Trích xuất đặc trưng Edge Detection 3

2.1.1 Tổng quan về thuật toán Canny Edge Detection 2.1.2 Nguyên lí hoạt động 2.1.3 Ưu điểm và nhược điểm của Edge Detection 2.2 Trích xuất đặc trưng HOG 6

2.2.1 Tổng quan 2.2.2 Nguyên lí hoạt động 2.2.3 Ưu, nhược điểm của HOG 2.3 Trích xuất đặc trưng CNN 11

2.3.1 Tổng quan về thuật toán CNN 2.3.2 Nguyên lí hoạt động 2.3.3 Ưu, nhược điểm của CNN CHƯƠNG 3 KẾT QUẢ THỰC NGHIỆM CỦA 3 PHƯƠNG PHÁP 15

3.1 Set up thực nghiệm .15

3.1.1 Dataset

3.1.2 Method

3.1.3 Độ đo

Trang 4

3.2 Kết quả thực nghiệm :……… 17 CHÚ THÍCH………19 TÀI LIỆU THAM KHẢO 19

Trang 5

Lời mở đầu

Trong thời đại của sự phát triển công nghệ, việc áp dụng các giải pháp thông minh để giải quyết các vấn đề trong cuộc sống hàng ngày không chỉ trở nên cần thiết mà còn trở thành một ưu tiên hàng đầu Trong lĩnh vực này, việc truy xuất và nhận diện hình ảnh động vật

đã trở thành một thách thức đáng kể Khả năng này không chỉ hỗ trợ trong việc nghiên cứu và bảo vệ đa dạng sinh học mà còn có ứng dụng rộng rãi trong nhiều lĩnh vực như giám sát môi trường, quản lý thú y, và giáo dục

Đồ án này đặt ra mục tiêu xây dựng một hệ thống truy xuất hình ảnh động vật dựa vào các đặc trưng nổi bật của chúng Thông qua việc kết hợp các phương pháp và công nghệ tiên tiến trong xử lý ảnh và máy học, chúng tôi mong muốn tạo ra một công cụ mạnh mẽ, linh hoạt và hiệu quả cho việc nhận diện và truy xuất thông tin về động vật từ các bức ảnh

Báo cáo này sẽ trình bày quá trình nghiên cứu, phân tích, thiết kế và triển khai hệ thống của chúng tôi Chúng tôi hy vọng rằng kết quả của đề tài này sẽ đóng góp một phần nhỏ trong việc nâng cao khả năng nhận diện và bảo vệ các loài động vật, đồng thời mở ra những cơ hội mới trong ứng dụng công nghệ để giải quyết các vấn đề trong thế giới tự nhiên và xã hội

Trang 6

Thông tin thành viên

STT Họ và tên MSSV Phân công Mức độ hoàn

thành

tiền xử lý dữ liệu, thuật toán Edge Detection, slide, viết báo cáo

100%

tiền xử lý dữ liệu, thuật toán CNN, slide, viết

báo cáo

100%

3 Nguyễn Phan Anh Minh 22520878 Chọn lọc các ảnh từ dataset,

tiền xử lý dữ liệu, thuật toán HOG, slide, viết báo cáo

100%

Trang 7

CHƯƠNG 1 TỔNG QUAN

1.1 Mô tả bài toán

Bài toán của đề tài là xây dựng một hệ thống truy xuất hình ảnh động vật dựa vào đặc trưng, nhằm nhận diện và trích xuất thông tin từ các hình ảnh chứa động vật

Sử dụng kỹ thuật xử lý ảnh số và máy học, mục tiêu là phát triển các bộ phân loại

có khả năng nhận diện đa dạng các loài động vật và tạo ra một ứng dụng linh hoạt

và hiệu quả cho việc truy xuất thông tin về động vật từ các nguồn dữ liệu khác nhau

1.2 Lý do chọn đề tài

• Tìm kiếm thông tin: hỗ trợ tìm kiếm, truy xuất hình ảnh thông tin của

những động vật mới hoặc lạ trong tự nhiên

• Phát triển công nghệ: Làm nền tảng cho việc phát triển các mô hình tìm

kiếm hình ảnh từ nội dung hình ảnh, văn bản nói chung

1.3 Phát biểu bài toán

- Input: Một ảnh có chứa một đối tượng động vật

- Output: K ảnh có chứa đối tượng động vật tương tự

Pipeline

1 Tải dữ liệu

2 Vector hóa ảnh dữ liệu và lưu trữ

3 Vector hóa ảnh cần tìm kiếm

4 Tính toán khoảng cách và vị trí của vector trong kho lưu trữ

Trang 8

FAISS

Faiss là một thư viện mã nguồn mở được phát triển bởi Facebook AI Research (FAIR), chuyên dùng cho việc tìm kiếm và phân cụm trên dữ liệu lớn trong không gian vector

Faiss có thể thực hiện các tác vụ tìm kiếm vector cực kỳ nhanh chóng và hiệu quả, thậm chí trên các tập dữ liệu vector lớn

Faiss hỗ trợ nhiều độ đo vector khác nhau như (Eculid, Cosine,…)

Trang 9

CHƯƠNG 2: CÁC PHƯƠNG PHÁP GIẢI QUYẾT BÀI TOÁN

2.1 Trích xuất đặc trưng Edge Detection

2.1.1 Tổng quan về thuật toán Canny Edge Detection

Thuật toán phát hiện cạnh Canny (Canny Edge Detector) là một trong những

phương pháp phổ biến và hiệu quả nhất để phát hiện các cạnh trong hình ảnh

Được phát triển bởi John F Canny vào năm 1986, thuật toán Canny Edge

Detector bao gồm một loạt các bước chính để tạo ra một hình ảnh chỉ chứa

a) Làm trơn ảnh: Trước hết, hình ảnh được làm trơn bằng cách sử dụng một bộ

lọc Gaussian để giảm nhiễu Làm trơn giúp loại bỏ các chi tiết không mong

muốn và làm cho cạnh trở nên mượt mà hơn

Hình 2

b) Tìm gradient của hình ảnh: Sau khi làm trơn, gradient của hình ảnh được

tính toán bằng cách sử dụng bộ lọc gradient như Sobel Độ lớn của gradient và

hướng của gradient tại mỗi điểm ảnh được tính toán

Trang 10

4

Hình 3

c) Làm mảnh đường biên:Có nhiều pixel cùng miêu tả một pixel trên cạnh của

ảnh ban đầu làm cho đường biên dày Vậy để làm những đường biên trở nên

sắc nét và mảnh hơn giống ảnh gốc ta sử dụng Non-maximum supression để

loại bỏ những pixel thừa

Hình 4

Hình 5

Trang 11

d) Loại bỏ cạnh nhiễu ('Hysteresis' thresholding): Bước này sẽ quyết định một

cạnh ta dự đoán ở các bước trên nó có phải là một cạnh thật sự hay không Giá trị threshold ở đây có hai ngưỡng Vmax và Vmin

Hình 6

2.1.3 Ưu điểm và nhược điểm của Edge Detection

Ưu điểm:

a) Phát hiện ranh giới rõ ràng: Phương pháp Edge Detection giúp phát hiện

ranh giới của các đối tượng trong hình ảnh một cách nhanh chóng và chính

xác, giúp trong việc nhận diện hình dáng và cấu trúc của các động vật

b) Giảm chiều dữ liệu: Bằng cách chỉ trích xuất các đặc trưng quan trọng như

các ranh giới và đường nét quan trọng, phương pháp Edge Detection giúp giảm kích thước dữ liệu và tăng tốc độ xử lý, đặc biệt là khi làm việc với các bộ dữ liệu lớn

c) Khả năng áp dụng rộng rãi: Phương pháp này có thể áp dụng được cho nhiều

loại hình ảnh và không yêu cầu sự chuẩn bị đặc biệt của dữ liệu, làm cho nó

linh hoạt và dễ triển khai

Nhược điểm:

a) Nhạy cảm với nhiễu: Edge Detection dễ bị ảnh hưởng bởi nhiễu trong hình

ảnh, gây ra các đường viền không mong muốn hoặc thiếu sót trong việc phát hiện ranh giới, làm giảm độ chính xác của quá trình nhận diện

Trang 12

6

b) Phụ thuộc vào điều kiện ánh sáng: Hiệu suất của Edge Detection có thể bị

ảnh hưởng bởi điều kiện ánh sáng trong hình ảnh Các đối tượng có thể không được phát hiện đầy đủ hoặc bị phát hiện sai nếu có sự biến đổi đáng kể về ánh sáng

c) Thiếu thông tin về chi tiết: Edge Detection thường chỉ tập trung vào việc phát

hiện các đường nét lớn và ranh giới chính, trong khi bỏ qua các chi tiết nhỏ và quan trọng trong hình ảnh, làm giảm độ chính xác của việc nhận diện

2.2 Trích xuất đặc trưng Histogram of Oriented Gradient

2.2.1.Tổng quan

Mấu chốt của nguyên lý này là hình dạng của một vật thể được mô tả thông qua 2 ma trận

đó là ma trận độ gradient và ma trận phương gradient Từ 2 ma trận này sẽ hình thành Histogram of Gradient và sau đó là có được vecto mô tả đặc trưng cho bức ảnh

ma trận là ma trận độ lớn gradient và ma trận phương gradient

Hình 7

Trang 13

Tính histogram of gradient từ 2 ma trận độ gradient và phương gradient Ví dụ bên dưới

thì histogram này có 9 bins Mỗi một phương gradient theo bảng bên trái sẽ ghép cặp với một độ lớn gradient bên phải Sau khi biết được phương gradient thuộc bins nào trong vecto bins, ta sẽ điền giá trị độ lớn gradient vào bin đó, ví dụ như 80 thuộc bin thứ 5 thì ta sẽ điền vào đó là 2

Hình 8

Trong trường hợp độ lớn phương gradients không rơi vào các đầu mút, ta sẽ sử dụng linear interpolation để phân chia độ lớn gradient về 2 bins liền kề mà giá trị phương gradient rơi

vào Ví dụ: giá trị phương gradient bằng x ghép cặp với độ lớn gradient bằng y x thuộc

[x0, x1] tức là phương gradient rơi vào khoảng giữa bin thứ (l-1) và bin thứ l Khi đó tại 2 bins (l-1) và l được điền vào giá trị cường độ theo công thức interpolation

Trang 14

8

Hình 9

Tính tổng tất cả các độ lớn gradient thuộc cùng 1 bins của véc tơ bins ta thu được biểu đồ Histogram of Gradients như bên dưới:

Trang 15

Hình 10

Chuẩn hóa vecto histogram theo block 16x16

Sau khi có HOG của từng cell rồi thì mình sẽ chuẩn hóa vecto histogram theo block 2x2 cell ( chuẩn hóa nhằm để tạo ra sự bất biến với sự thay đổi chiếu sáng và đổ bóng ) Một block là sẽ có 4 vecto histogram kích thước 1x9, tổng hợp lại là 1x36 Rồi mình sẽ chuẩn hóa theo *norm chuẩn bậc 2 hoặc 1 Sau khi chuẩn hóa vecto xong 1 block chúng ta sẽ tới block tiếp theo bằng cách di chuyển window với step_size = 8 pixels

Hình 11

Trang 16

36 chiều Do đó cuối cùng véc tơ HOG sẽ có kích thước là 105x36=3780 chiều Đây là một véc tơ kích thước tương đối lớn nên có thể mô phỏng được đặc trưng của ảnh khá tốt

Hình 12

2.2.3 Ưu, nhược điểm của HOG

Ưu điểm:

Trang 17

1 Hiệu quả cao trong việc mô tả đặc trưng: HOG có khả năng mô tả các

đặc trưng hình ảnh một cách hiệu quả, đặc biệt là đối với các đối tượng

có hình dạng và cấu trúc rõ ràng

2 Tính toán nhanh: Thuật toán HOG tương đối đơn giản và có thể tính

toán nhanh chóng, giúp tiết kiệm thời gian xử lý

3 Khả năng chống nhiễu tốt: HOG ít bị ảnh hưởng bởi các nhiễu trong

ảnh như thay đổi ánh sáng, góc nhìn,

4 Bất biến theo phép biến đổi hình ảnh: HOG có khả năng bất biến theo

một số phép biến đổi hình ảnh cơ bản như dịch chuyển, xoay, thay đổi kích thước

5 Dễ dàng triển khai: HOG có thể được triển khai dễ dàng trên nhiều nền

tảng phần cứng và phần mềm khác nhau

Nhược điểm:

6 Độ nhạy cảm với độ phân giải ảnh: Hiệu quả của HOG có thể bị ảnh

hưởng bởi độ phân giải ảnh Khi ảnh có độ phân giải thấp, HOG có thể không mô tả được đầy đủ các đặc trưng của đối tượng

7 Khả năng phân biệt đối tượng kém trong điều kiện phức tạp: HOG

có thể gặp khó khăn trong việc phân biệt các đối tượng có hình dạng và cấu trúc tương đồng, đặc biệt là trong điều kiện ánh sáng yếu hoặc có nhiều nhiễu

8 Kích thước mô tả đặc trưng lớn: HOG có thể tạo ra mô tả đặc trưng có

kích thước khá lớn, dẫn đến việc tốn nhiều bộ nhớ và thời gian xử lý cho các ứng dụng có quy mô lớn

2.3 Trích xuất đặc trưng Convolutional Neural Network

2.3.1 Tổng quan về thuật toán Convolutional Neural Network

Mạng Convolutional Neural Network (CNN) là một loại mạng nơ-ron đặc biệt, rất hiệu quả trong các bài toán liên quan đến thị giác máy tính như nhận dạng hình ảnh, phân loại hình ảnh, và phát hiện đối tượng Khác với các trính xuất đặc trưng khác, CNN có khả năng tự động học và trích xuất các đặc trưng quan trọng từ ảnh đầu vào thông qua các lớp tích chập và pooling

2.3.2 Nguyên lí hoạt động

Trang 18

12

CNN hoạt động thông qua việc áp dụng một loạt các lớp tích chập (convolutional layers), hàm kích hoạt (activation functions), và các lớp pooling để trích xuất các đặc trưng từ ảnh đầu vào Các lớp này có thể được mô tả chi tiết như sau:

a) Convolutional Layers (Lớp tích chập): Các lớp này sử dụng các bộ lọc

(filters) để quét qua ảnh và phát hiện các đặc trưng cục bộ như cạnh, góc, và các hình dạng đơn giản Mỗi bộ lọc tạo ra một bản đồ đặc trưng (feature map) tương ứng

b) Activation Functions (Hàm kích hoạt): Sau mỗi lớp tích chập, hàm kích hoạt

như ReLU (Rectified Linear Unit) được áp dụng để thêm tính phi tuyến vào mạng, giúp mạng học các mối quan hệ phức tạp trong dữ liệu

c) Pooling Layers (Lớp pooling): Lớp này giảm kích thước không gian của các

bản đồ đặc trưng bằng cách lấy giá trị cực đại (max pooling) hoặc giá trị trung bình (average pooling) trong các vùng nhỏ của bản đồ đặc trưng Pooling giúp giảm số lượng tham số và tính toán trong mạng

d) Fully Connected Layers (Lớp kết nối hoàn toàn): Các lớp này thường được

đặt ở cuối mạng để thực hiện việc phân loại hoặc dự đoán dựa trên các đặc trưng đã được trích xuất từ các lớp tích chập và pooling

Mô hình sử dụng:

Hình 13

Cách xử lý một tấm ảnh khi đi qua Convolutional Neural Network:

Trang 19

a) Input Layer (Lớp đầu vào):

Ảnh đầu vào được xử lý qua một số lượng bộ lọc nhất định (ví dụ: 64 bộ lọc), mỗi bộ lọc sẽ quét qua ảnh và tạo ra một bản đồ đặc trưng Mỗi giá trị trong bản đồ đặc trưng là kết quả của tích chập giữa bộ lọc và một vùng nhỏ của ảnh

b) Convolutional Layer (Lớp tích chập):

Ảnh đầu vào được xử lý qua một số lượng bộ lọc nhất định (ví dụ: 64 bộ lọc), mỗi bộ lọc sẽ quét qua ảnh và tạo ra một bản đồ đặc trưng Mỗi giá trị trong bản đồ đặc trưng là kết quả của tích chập giữa bộ lọc và một vùng nhỏ của ảnh

c) Activation Function (Hàm kích hoạt):

Các giá trị trong bản đồ đặc trưng được áp dụng hàm kích hoạt ReLU

(Rectified Linear Unit) để thêm tính phi tuyến, giúp mô hình học các mối quan

hệ phức tạp trong dữ liệu

d) Pooling Layer (Lớp pooling):

Bản đồ đặc trưng được giảm kích thước thông qua các lớp pooling (ví dụ: max pooling), giúp giảm số lượng tham số và tính toán trong mạng

e) Fully Connected Layer (Lớp kết nối hoàn toàn):

Các bản đồ đặc trưng cuối cùng được chuyển thành một vector và đưa qua các lớp kết nối hoàn toàn để thực hiện việc phân loại hoặc dự đoán

f) Output Layer (Lớp đầu ra):

Kết quả cuối cùng có thể là một vector đặc trưng đại diện cho ảnh, hoặc là các xác suất của các lớp phân loại

2.3.3 Ưu điểm và nhược điểm của Convolutional Neural Network

Ưu điểm:

a) Tự động trích xuất đặc trưng: CNN tự động học và trích xuất các đặc

trưng từ dữ liệu, loại bỏ nhu cầu về việc thiết kế thủ công các bộ trích xuất đặc trưng

b) Hiệu suất cao: CNN thường có hiệu suất cao trong các bài toán thị giác

máy tính, như phân loại ảnh và nhận dạng đối tượng

Nhược điểm:

a) Yêu cầu tài nguyên tính toán lớn: Huấn luyện và triển khai CNN yêu

cầu tài nguyên tính toán lớn, bao gồm cả CPU và GPU mạnh mẽ

Trang 20

14

b) Dữ liệu huấn luyện lớn: CNN thường yêu cầu lượng dữ liệu lớn để đạt

được hiệu suất tốt, điều này có thể là một thách thức trong các ứng dụng với dữ liệu hạn chế

c) Độ phức tạp của mô hình: CNN có cấu trúc phức tạp với nhiều tham

số, điều này làm cho việc điều chỉnh và tối ưu hóa mô hình trở nên khó khăn

d) Overfitting: CNN dễ bị overfitting khi huấn luyện trên các tập dữ liệu

nhỏ hoặc không đa dạng Điều này đòi hỏi các kỹ thuật regularization và

dữ liệu phong phú để giảm thiểu vấn đề

Trang 21

CHƯƠNG 3: THỰC NGHIỆM:

3.1 Set up thực nghiệm :

3.1.1 Dataset :

Tập dữ liệu được sử dụng trong thực nghiệm bao gồm ảnh của 5 loài động vật:

chó, mèo, gà, voi, và nhện Mỗi loài động vật được chia thành 100 ảnh cho huấn

luyện và 25 ảnh cho kiểm test

Hình 14

3.1.2 Method :

a) Canny Edge Detection:

Phát hiện cạnh là phương pháp trích xuất đặc trưng dựa trên việc tìm các đường biên của các đối tượng trong ảnh

Các tham số sử dụng:

Blur_ksize : 5 Threshold1 : 100 Threshold2 : 200

c) HOG :

Trang 22

16

HOG là phương pháp trích xuất đặc trưng dựa trên việc đếm số lượng các gradient hướng trong các vùng cục bộ của ảnh

Các tham số sử dụng : Pixels_per_cell : (8,8) Cells_per_block : (2,2) Block_norm : “L2”

d) CNN :

CNN là phương pháp trích xuất đặc trưng dựa trên mạng nơ-ron tích chập Mô hình CNN được sử dụng trong thực nghiệm bao gồm các lớp tích chập, pooling và các lớp kết nối hoàn toàn

Các tham số sử dụng:

Learning rate : 0.01 Optimizer: Adam Epochs : 50 Batch size : 250 3.1.3 Độ đo :

a) Metrics : Precion, Recall

Precision thể hiện tỷ lệ giữa số lượng ảnh đúng (relevant images) trong tập kết quả trả về và tổng số ảnh mà hệ thống trả về Nói cách khác, precision đánh giá mức độ mà các ảnh trong tập kết quả thực sự phù hợp với truy vấn

Recall được sử dụng để chỉ tỉ lệ số lượng các hình ảnh có sẵn trong

cơ sở dữ liệu mà hệ thống đã trả về so với tổng số hình ảnh có trong cơ sở

dữ liệu và có nhãn tương tự với hình ảnh truy vấn

Ngày đăng: 25/06/2025, 07:10

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