Docsity
Docsity

Prepare for your exams
Prepare for your exams

Study with the several resources on Docsity


Earn points to download
Earn points to download

Earn points by helping other students or get them with a premium plan


Guidelines and tips
Guidelines and tips

essay report on image processing, Papers of Digital Image Processing

essay report on photo processing learn about photo processing and do small projects

Typology: Papers

2022/2023

Uploaded on 11/03/2024

ngo-che-quoc-djai-gtcb-264
ngo-che-quoc-djai-gtcb-264 🇻🇳

1 document

1 / 32

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC GIAO THÔNG VẬN TẢI
PHÂN HIỆU TẠI THÀNH PHỐ HỒ CHÍ MINH
BỘ MÔN ĐIỆN-ĐIỆN TỬ
-----------------
TIỂU LUẬN – VẤN ĐÁP HỌC PHẦN
XỬ LÝ ẢNH TRONG CÔNG NGHIỆP
Đề tài: NHẬN DIỆN ĐỘNG VẬT ỨNG DỤNG
XỬ LÝ ẢNH
Sinh viên thực hiện: Ngô Chế Quốc Đại
MSSV: 6151030005
Lớp: CQ.61.TĐH
Giảng viên hướng dẫn: Mai Vạn Hậu
TP. Hồ Chí Minh, tháng 06 năm 2024
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20

Partial preview of the text

Download essay report on image processing and more Papers Digital Image Processing in PDF only on Docsity!

BỘ GIÁO DỤC VÀ ĐÀO TẠO

TRƯỜNG ĐẠI HỌC GIAO THÔNG VẬN TẢI

PHÂN HIỆU TẠI THÀNH PHỐ HỒ CHÍ MINH

BỘ MÔN ĐIỆN-ĐIỆN TỬ

TIỂU LUẬN – VẤN ĐÁP HỌC PHẦN

XỬ LÝ ẢNH TRONG CÔNG NGHIỆP

Đề tài: NHẬN DIỆN ĐỘNG VẬT ỨNG DỤNG

XỬ LÝ ẢNH

Sinh viên thực hiện: Ngô Chế Quốc Đại

MSSV: 6151030005

Lớp: CQ.61.TĐH

Giảng viên hướng dẫn: Mai Vạn Hậu

TP. Hồ Chí Minh, tháng 06 năm 2024

MỤC LỤC

Hình 2.5. Hình biểu diễn trước và sau khi sử dụng thuật toán non-max suppression.

  • LỜI NÓI ĐẦU ................................................................................................................
  • CHƯƠNG 1. TỔNG QUAN ĐỀ TÀI ...........................................................................
    • 1.1. Đặt vấn đề ...........................................................................................................
    • 1.2. Mục tiêu đề tài ....................................................................................................
  • CHƯƠNG 2. CƠ SỞ LÝ THUYẾT .............................................................................
    • 2.1. Tổng quan về YOLO ..........................................................................................
    • 2.2. Kiến trúc mạng YOLO ......................................................................................
    • 2.3. Sơ đồ thuật toán của YOLO ..............................................................................
    • 2.4. Đầu ra của YOLO ..............................................................................................
    • 2.5. Hàm mất mát (Loss Function) ..........................................................................
      • 2.5.1. Classification Loss .......................................................................................
      • 2.5.2. Localization Loss .........................................................................................
      • 2.5.3. Confidence Loss ..........................................................................................
    • 2.6. Dự đoán Bounding Box ......................................................................................
      • 2.6.2. Non-Max Suppression
    • 2.7. YOLOv8 ............................................................................................................
      • 2.7.1. Tổng quan về YOLOv8.............................................................................
      • 2.7.2. Ưu điểm và hạn chế của YOLOv8 ...........................................................
      • 2.7.3. Chi tiết các khối trong YOLOv8 ..............................................................
  • CHƯƠNG 3. ỨNG DỤNG HỆ THỐNG NHẬN DIỆN ĐỘNG VẬT .....................
    • 3.1. Cơ sở dữ liệu .....................................................................................................
    • 3.2. Huấn luyện mô hình .........................................................................................
    • 3.3. Kết quả thực nghiệm ........................................................................................
      • 3.3.1. Kết quả quá trình huấn luyện ..................................................................
      • 3.3.2. Kết quả quá trình thực nghiệm ...............................................................
  • CHƯƠNG 4. KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN ..........................................
    • 4.1. Kết luận .............................................................................................................
    • 4.2. Hạn chế ..............................................................................................................
    • 4.3. Hướng phát triển ..............................................................................................
  • TÀI LIỆU THAM KHẢO ...........................................................................................
  • PHỤ LỤC .....................................................................................................................
  • Hình 2.1. Kiến trúc mạng YOLO. ................................................................................ MỤC LỤC HÌNH ẢNH
  • Hình 2.2. Kiến trúc các lớp của YOLOv3. ..................................................................
  • Hình 2.3. Tổng quan về thuật toán YOLO. .................................................................
  • Hình 2.4. Công thức ước lượng bounding box từ anchor box. ................................
  • Hình 2.6. Lịch sử hình thành ......................................................................................
  • Hình 2.7. So sánh độ chính xác và hiệu suất của các mô hình YOLO ....................
  • Hình 3.1. Các thư mục chứa hình ảnh và các nhãn của từng ảnh ..........................
  • Hình 3.2. Biểu đồ về tỉ lệ tệp train và tệp test ...........................................................
  • Hình 3.3. Kết quả của quá trình huấn luyện.............................................................
  • Hình 3.4. Ma trận nhầm lẫn chuẩn hóa trong quá trình huấn luyện mô hình. .....
  • Hình 3.5. Kết quả sau khi đã train xong ở đối tượng chủ yếu là vẹt ......................
  • Hình 3.6. Thử nghiệm với một con vật (loài cá xấu và loài bướm) .........................
  • Hình 3.7. Thử nghiệm với nhiều loài động vật..........................................................

LỜI NÓI ĐẦU

Trong thế giới hiện đại, vấn đề về sự suy thoái môi trường sống, biến đổi khí hậu

và săn bắn trái phép đang đẩy nhiều loài động vật đến bờ vực tuyệt chủng. Thực trạng

này không chỉ ảnh hưởng đến đa dạng sinh học mà còn gây ra mất cân bằng sinh thái,

đe dọa trực tiếp đến cuộc sống của con người.

Để đối phó với những thách thức này, các nhà khoa học và nhà bảo tồn đã từ lâu áp dụng

nhiều phương pháp truyền thống để giám sát và bảo vệ các loài động vật. Tuy nhiên,

trong thời đại của trí tuệ nhân tạo, chúng ta có thêm một công cụ mạnh mẽ để hỗ trợ

công việc này.

Trí tuệ nhân tạo, đặc biệt là trong lĩnh vực thị giác máy tính, đã mang lại nhiều

tiềm năng trong việc nhận diện và phân loại động vật. Mạng nơron học sâu, chẳng hạn

như mô hình YOLO (You Only Look Once), đã được áp dụng rộng rãi để xử lý các

nhiệm vụ nhận diện đối tượng, bao gồm cả việc nhận diện và phân loại động vật.

Bằng cách kết hợp sức mạnh của trí tuệ nhân tạo và các công nghệ thị giác máy

tính, chúng ta có thể tăng cường khả năng giám sát và bảo vệ đa dạng sinh học, từ việc

nhận diện loài động vật quý hiếm đến giám sát và quản lý các khu vực sinh thái tự nhiên.

Trong báo cáo tiểu luận này, chúng em sẽ đi sâu vào việc tìm hiểu về các phương pháp,

thuật toán về học sâu trong việc nhận diện động vật.

Chúng em xin cảm ơn Thầy và các bạn đã hỗ trợ nhóm chúng em hoàn thành bài tiểu

luận này. Chúng em hy vọng rằng báo cáo này sẽ đóng góp vào sự hiểu biết về một ứng

dụng xử lý ảnh trong bảo vệ đa dạng sinh học và môi trường sống.

và độ chính xác trong công tác giám sát và bảo vệ động vật mà còn giảm thiểu tác động

trực tiếp đến động vật, tiết kiệm thời gian và nguồn lực. Việc áp dụng công nghệ xử lý

ảnh vào nhận diện động vật mang lại nhiều lợi ích đáng kể.

Trước hết, công nghệ này giúp tăng cường khả năng giám sát và thu thập dữ liệu

một cách liên tục và chi tiết, cung cấp những thông tin quan trọng về hành vi, di chuyển

và môi trường sống của động vật.

Thứ hai, việc tự động hóa quy trình nhận diện giúp giảm thiểu sai sót và tăng cường

hiệu quả phân tích dữ liệu.

Cuối cùng, công nghệ này không xâm lấn, đảm bảo động vật không bị làm phiền

hay tổn thương trong quá trình nghiên cứu.

Trong bối cảnh tình hình động vật trên thế giới đang đứng trước nhiều nguy cơ,

việc ứng dụng công nghệ xử lý ảnh vào nhận diện và bảo vệ động vật không chỉ là một

hướng đi mới mẻ mà còn là một bước tiến quan trọng, góp phần vào công cuộc bảo vệ

môi trường và đa dạng sinh học. Chính vì lý do này nên nhóm chúng em đã tìm hiểu và

thực hiện đề tài “NHẬN DIỆN ĐỘNG VẬT ỨNG DỤNG XỬ LÝ ẢNH VỚI MÔ

HÌNH YOLO V8”.

1.2. Mục tiêu đề tài

 Vận dụng được những kiến thức cơ bản về huấn luyện mạng nơ-ron.

 Xây dựng được một mô hình có khả năng huấn luyện các tập dữ liệu động vật

khác nhau.

 Nhận diện được tất cả các loài động vật có trong tập dữ liệu.

CHƯƠNG 2. CƠ SỞ LÝ THUYẾT

2.1. Tổng quan về YOLO

YOLO (You Only Look Once) là một mô hình mạng nơ-ron tích chập (CNN) nổi

bật được sử dụng cho việc phát hiện, nhận dạng và phân loại đối tượng trong hình ảnh.

Mô hình này kết hợp giữa các lớp tích chập (convolutional layers) và các lớp kết nối

đầy đủ (fully-connected layers). Các lớp tích chập chịu trách nhiệm trích xuất các đặc

trưng của ảnh, trong khi các lớp kết nối đầy đủ dự đoán xác suất và tọa độ của các đối

tượng.

Mặc dù YOLO có thể không phải là thuật toán tốt nhất về độ chính xác, nhưng nó

được công nhận là một trong những thuật toán nhanh nhất trong các lớp mô hình phát

hiện đối tượng (object detection). YOLO có thể đạt được tốc độ gần như thời gian thực

mà không làm giảm đáng kể độ chính xác so với các mô hình hàng đầu khác. Điểm

mạnh của YOLO nằm ở khả năng phát hiện và nhận dạng nhiều đối tượng khác nhau

trong một bức ảnh, thay vì chỉ phân loại duy nhất một nhãn cho mỗi ảnh như trong các

bài toán phân loại (classification) thông thường.

Một trong những ưu điểm quan trọng của YOLO là khả năng sử dụng thông tin từ

toàn bộ bức ảnh một lần và dự đoán toàn bộ hộp chứa các đối tượng (object boxes). Mô

hình được xây dựng theo kiểu end-to-end, tức là toàn bộ quá trình huấn luyện có thể

thực hiện hoàn toàn bằng phương pháp giảm độ dốc (gradient descent), giúp tối ưu hóa

hiệu suất và độ chính xác.

Tính đến thời điểm hiện tại, YOLO có nhiều phiên bản với nhiều cải tiến phát triển

hiện tại phiên bản mới và ổn định nhất là YOLOv8, đã khắc phục nhiều nhược điểm của

các phiên bản trước đó như lỗi về việc xác định vị trí của vật thể, các ràng buộc về không

gian trên những hộp chứa (bounding box), và khả năng dự đoán hạn chế của mỗi ô lưới

(grid cell) đối với số lượng hộp chứa. Sự cải tiến liên tục qua các phiên bản giúp YOLO

trở thành một trong những lựa chọn hàng đầu cho các ứng dụng yêu cầu tốc độ và hiệu

quả trong việc phát hiện đối tượng.

2.2. Kiến trúc mạng YOLO

Base network của yolo sử dụng chủ yếu là các convoluional layer và các fully -

conntected layer. Các kiến trúc Yolo cũng khá đa dạng và có thể tùy biến thành các

version cho nhiều input shape khác nhau.

Các bức ảnh khi được đưa vào mô hình sẽ được scale để về chung một kích thước

phù hợp với input shape của mô hình và sau đó được gom lại thành batch đưa vào huấn

luyện.

Hiện tại YOLO đang hỗ trợ 2 đầu vào chính là 416x416 và 608x608. Mỗi một

đầu vào sẽ có một thiết kế các layers riêng phù hợp với shape của input. Sau khi đi qua

các layer convolutional thì shape giảm dần theo cấp số nhân là 2. Cuối cùng ta thu được

một feature map có kích thước tương đối nhỏ để dự báo vật thể trên từng ô của feature

map.

Kích thước của feature map sẽ phụ thuộc vào đầu vào. Đối với input 416x416 thì

feature map có các kích thước là 13x13, 26x26 và 52x52. Và khi input là 608x608 sẽ

tạo ra feature map 19x19, 38x38, 72x72.

2.3. Sơ đồ thuật toán của YOLO

Hình 2.3. Tổng quan về thuật toán YOLO.

Đầu vào của mô hình là một ảnh, mô hình sẽ nhận dạng ảnh đó có đối tượng nào

hay không, sau đó sẽ xác định tọa độ của đối tượng trong bức ảnh. Ảnh đầu vào được

chia thành SxS ô thường thì sẽ là 3x3,7x7,9x9,…. Việc chia ô có ảnh hưởng đến việc

phát hiện đối tượng của mô hình.

Với Input là 1 ảnh, đầu ra mô hình là một ma trận 3 chiều có kích thước SxSx(

x N + M) với số lượng tham số mỗi ô là (5 x N + M) với N và M lần lượt là số lượng

Box và Class mà mỗi ô cần dự đoán. Xét ví dụ ở hình trên chia thành 7x7 ô, mỗi ô cầndự

đoán 2 bounding box và 3 object: con chó, ô tô, xe đạp thì output sẽ là 7x7x13, mỗi ô sẽ

có 13 tham số, cho kết quả trả về (7x7x2 =98) bounding box.

2.4. Đầu ra của YOLO

Output của mô hình YOLO là một véc tơ sẽ bao gồm các thành phần:

y

T

= [

0

௕௢௨௡ௗ௜௡௚௕௢௫

௦௖௢௥௘ ௢௙ ௖ ௖௟௔௦௦௘௦

]

Trong đó:

 p 0

: là xác suất dự báo vật thể xuất hiện trong bounding box.

௕௢௨௡ௗ௜௡௚௕௢௫

: giúp xác định bounding box. Trong đó t x

,t y

là tọa độ tâm và t w

,t h

là kích thước rộng, dài của bounding box.

௦௖௢௥௘ ௢௙ ௖ ௖௟௔௦௦௘௦

: là véc tơ phân phối xác suất dự báo của các classes.

2.5. Hàm mất mát (Loss Function)

Sau khi đã định nghĩa được những thông tin mà mô hình cần phải dự đoán, và kiến

trúc của mô hình CNN. Bây giờ là lúc mà chúng ta sẽ định nghĩa hàm lỗi.

YOLO sử dụng hàm độ lỗi bình phương giữ dự đoán và nhãn để tính độ lỗi cho mô hình.

Cụ thể, độ lỗi tổng của chúng ta sẽ là tổng của 3 độ lỗi con sau:

 Độ lỗi của việc dữ đoán loại nhãn của Object-Classification Loss

 Độ lỗi của dự đoán tạo độ cũng như chiều dài, rộng của Boundary Box -

Localization Loss.

 Độ lỗi của ô vuông có chứa object nào hay không - Confidence Loss.

Chúng ta mong muốn hàm lỗi có chức năng sau:

 Trong quá trình huấn luyện, mô hình sẽ nhìn vào những ô vuông có chứa object.

Tăng Classification Score lớp đúng của object đó lên.

 Sau đó, cũng nhìn vào ô vuông đó, tìm boundary box tốt nhất trong 2 boxes được

dự đoán.

 Tăng Localization Score của boundary box đó lên, thay đổi thông tin boundary

box để gần đúng với nhãn. Đối với những ô vuông không chứa object, giảm

Confidence Score và chúng ta sẽ không quan tâm đến classification score và

Localization Score của những ô vuông này.

box còn lại trong ô vuông (được tô viền màu xanh) sẽ được bỏ qua trong quá trình tính

toán độ lỗi, nhằm giảm thiểu sự phức tạp và tránh các tính toán không cần thiết. Điều

này cũng giúp tập trung vào việc tối ưu hóa bounding box có khả năng cao nhất, đảm

bảo rằng mô hình học được các đặc trưng quan trọng nhất cho việc phát hiện vật

thể.Localization loss là độ lỗi quan trọng nhất trong 3 loại độ lỗi trên. Do đó, ta cần đặt

trọng số cao hơn cho độ lỗi này.

2.5.3. Confidence Loss

Confidence loss thể hiện độ lỗi giữa dự đoán boundary box đó chứa object so với

nhãn thực tế tại ô vuông đó. Độ lỗi này tính nên cả những ô vuông chứa object và không

chứa object.

௖௢௡௙௜ௗ௘௡௖௘

௢௕௝

௜௝

௝ୀ଴

௜ୀ଴

௡௢௢௕௝௘௖௧

௡௢௢௕௝

௜௝

௝ୀ଴

௜ୀ଴

Độ lỗi này là độ lỗi bình phường của dự đoán boundary đó chứa object với nhãn

thực tế của ô vuông tại vị trí tương ứng, chúng ta lưu ý rằng, độ lỗi tại ô vuông mà nhãn

chứa object quan trọng hơn là độ lỗi tại ô vuông không chứa object, do đó chúng ta cần

sử dụng hệ số lambda để cân bằng điều này.

Tổng kết lại, tổng lỗi của chúng ta sẽ bằng tổng của 3 loại độ lỗi trên

௧௢௧௔௟

௖௟௔௦௦௜௙௜௖௔௧௜௢௡

௟௢௖௔௟௜௭௔௧௜௢௡

௖௢௡௙௜ௗ௘௡௖௘

2.6. Dự đoán Bounding Box

Để dự báo bounding box cho một vật thể, chúng ta dựa trên một phép biến đổi từ

anchor box và cell trên feature map. Điều này giúp đảm bảo rằng việc dự đoán bounding

box sẽ không lệch quá xa khỏi vị trí trung tâm của cell, giữ cho quá trình huấn luyện mô

hình trở nên ổn định hơn. Nếu bounding box dự đoán có thể được đặt vào bất kỳ phần

nào của hình ảnh, như trong trường hợp của mạng regional proposal network (RPN),

việc huấn luyện mô hình có thể trở nên không ổn định do sự phân tán quá rộng của các

dự đoán.

Giả sử chúng ta có một anchor box có kích thước (pw, ph) tại cell trên feature

map với góc trên cùng bên trái của nó là (Cx, Cy). Mô hình sẽ dự đoán 4 tham số (tx, ty,

tw, th), trong đó 2 tham số đầu là độ lệch (offset) so với góc trên cùng bên trái của cell,

và 2 tham số sau là tỷ lệ (scale) so với kích thước của anchor box. Các tham số này sau

đó sẽ được sử dụng để xác định bounding box dự đoán b có tâm (bx, by) và kích thước

(bw, bh) thông qua các hàm sigmoid và hàm exponential như các công thức dưới đây.

b x

=(t x

) + c x

b y

=(t y

) + c y

bw= w𝑒

b h

h

Hàm sigmoid được sử dụng để giới hạn độ lệch của tâm bounding box, đảm bảo

rằng nó nằm trong một phạm vi hợp lý xung quanh cell trên feature map. Điều này giúp

tránh việc bounding box dự đoán bị lệch quá xa, duy trì tính ổn định trong quá trình

huấn luyện mô hình. Trong khi đó, hàm exponential được áp dụng cho các tham số kích

thước để đảm bảo rằng các giá trị tỷ lệ luôn dương, giúp xác định kích thước bounding

box một cách chính xác và hợp lý. Phương pháp này không chỉ giúp mô hình dễ dàng

học được các đặc trưng cần thiết để phát hiện vật thể một cách hiệu quả, mà còn giảm

thiểu nguy cơ dự đoán sai lệch quá nhiều so với vị trí thực tế của vật thể. Kết hợp các

phép biến đổi này giúp mô hình đạt được hiệu suất tốt hơn trong việc phát hiện và dự

đoán bounding box, góp phần nâng cao độ chính xác và độ tin cậy của hệ thống phát

hiện vật thể tổng thể.

Ngoài ra do các tọa độ đã được hiệu chỉnh theo width và height của bức ảnh nên

luôn có giá trị nằm trong ngưỡng [0, 1]. Do đó khi áp dụng hàm sigmoid giúp ta giới

hạn được tọa độ không vượt quá xa các ngưỡng này.

Hình 2.4. Công thức ước lượng bounding box từ anchor box.

2.7. YOLOv

2.7.1. Tổng quan về YOLOv

YOLOv8 là một mô hình nhận dạng đối tượng tiên tiến dựa trên mạng

convolutional neural network (CNN) được phát triển bởi Joseph Redmon và nhóm

nghiên cứu của ông tại Đại học Washington. Đây là phiên bản nâng cấp của YOLOv7,

với những cải tiến đáng kể về cả tốc độ và độ chính xác trong việc nhận diện đối tượng.

Những tiến bộ này đạt được thông qua một loạt các cải tiến kỹ thuật, bao gồm việc sử

dụng mạng kim tự tháp đặc trưng (feature pyramid network), các mô-đun chú ý không

gian (spatial attention modules), và các kỹ thuật tăng cường dữ liệu tiên tiến (advanced

data augmentation techniques).

Mô hình YOLOv8 sử dụng kiến trúc darknet-53, một loại mạng nơ-ron sâu được

tối ưu hóa cho việc trích xuất đặc trưng từ hình ảnh. Darknet-53 có 53 lớp convolutional,

giúp mô hình học được các đặc trưng phức tạp từ dữ liệu hình ảnh một cách hiệu quả.

Trên cơ sở các đặc trưng này, thuật toán nhận dạng đối tượng của YOLOv8 được áp

dụng để xác định vị trí và phân loại các đối tượng trong ảnh. Dưới đây là các tính năng

nổi bật của YOLOv8:

 Tăng cường mô hình bằng cách thêm các kênh phân tán để tăng tốc độ tính toán.

 Sử dụng kỹ thuật Attention để cải thiện khả năng nhận dạng đối tượng của mô

hình.

 Áp dụng phương pháp đào tạo mới để tăng tốc độ hội tụ.

 Sử dụng kiến trúc mạng nơ-ron mới: Sử dụng kiến trúc YOLOv4 làm cơ sở để

tăng hiệu suất và độ chính xác của mô hình.

 Tích hợp cơ chế tự động điều chỉnh tỷ lệ tăng kích thước của hình ảnh đầu vào

(AutoScale).

 Hỗ trợ giám sát bằng video (Video Supervision): Mô hình có khả năng phát hiện

và giám sát vật thể trong các video và đưa ra dự đoán liên tục trên toàn bộ video.

 Tích hợp công nghệ Ensemble.

 Tính năng điều chỉnh tỷ lệ tự động (AutoAnchor): Cải thiện việc phát hiện đối

tượng với nhiều tỷ lệ khác nhau.

Hình 2.6. Lịch sử hình thành

2.7.2. Ưu điểm và hạn chế của YOLOv

a. Ưu điểm

 Tốc độ: YOLOv8 được đánh giá là nhanh chóng và thời gian phản hồi thấp, giúp

xử lý các tác vụ nhận diện đối tượng và phân-segment ảnh trong thời gian thực.

 Độ chính xác: YOLOv8 được xây dựng trên các tiến bộ về học sâu và thị giác

máy tính, đảm bảo độ chính xác cao trong việc nhận diện đối tượng.

 Sự linh hoạt: YOLOv8 hỗ trợ việc nhận diện đối tượng và phân-segment trên cả

GPU và CPU, tận dụng các công nghệ như TensorRT của Nvidia và OpenVino

của Intel.

b. Nhược điểm:

 Phải có kiến thức chuyên sâu về Machine Learning, Deep Learning và các thuật

toán liên quan. Cần phải được huấn luyện trên một tập dữ liệu đủ lớn và đa dạng

để đạt được hiệu quả cao nhất.

 Yêu cầu các tài nguyên tính toán cao để đạt được tốc độ xử lý nhanh và chính

xác.

 YOLOv8 có thể không hoạt động tốt trong tất cả các môi trường và có thể cần

thêm điều chỉnh hoặc tối ưu hóa để đạt được hiệu suất tối ưu.

Hình 2.7. So sánh độ chính xác và hiệu suất của các mô hình YOLO

khác nhau của mạng hoặc từ các nguồn khác nhau để tạo ra một tensor có thông tin

phong phú hơn.

C2f (C2F - C2F Block)

C2f có thể là viết tắt của "Cross Stage Partial Network (CSP) with Focus". Đây

là một phần cấu trúc sử dụng CSP và kỹ thuật tập trung để tối ưu hóa việc truyền thông

tin và giảm độ phức tạp của mô hình.

Upsample

Upsample là quá trình tăng kích thước không gian của tensor (ảnh) thông qua các

kỹ thuật như interpolation (nội suy). Trong YOLOv8, upsample thường được sử dụng

để đưa các đặc trưng từ các mức độ phân giải thấp lên mức độ phân giải cao hơn để kết

hợp với các đặc trưng từ các tầng trước.

Conv (Convolution)

Conv là viết tắt của convolution (tích chập), một kỹ thuật trong mạng nơ-ron tích

chập (CNN) để trích xuất các đặc trưng từ ảnh đầu vào. Các lớp convolution áp dụng

các bộ lọc (filter) để tạo ra các bản đồ đặc trưng (feature map).

Detect

Detect là một lớp hoặc một khối trong YOLOv8 chịu trách nhiệm trực tiếp dự

đoán các bounding boxes và các lớp đối tượng. Đây là nơi mà các đầu ra cuối cùng của

mạng được tạo ra.

Loss Terms

Các thuật ngữ liên quan đến hàm loss trong YOLOv8 bao gồm:

Bbox (Bounding Box Regression): Đây là thành phần của hàm loss liên quan đến

việc dự đoán các tọa độ của bounding boxes. Nó đo lường sự khác biệt giữa các

bounding boxes dự đoán và bounding boxes thực tế.

Cls (Classification): Đây là thành phần của hàm loss liên quan đến việc dự đoán

lớp của các đối tượng. Nó đo lường sự khác biệt giữa các dự đoán lớp và các nhãn lớp

thực tế.

CIoU (Complete Intersection over Union): Đây là một metric nâng cao cho

bounding box regression, không chỉ tính toán IoU mà còn bao gồm các yếu tố như

khoảng cách giữa các tâm của các bounding boxes, tỷ lệ khung hình, và độ chồng chéo.

DFL (Distribution Focal Loss): Đây là một kỹ thuật loss được sử dụng để cải

thiện độ chính xác của các dự đoán bounding box thông qua việc tối ưu hóa các phân

phối của bounding box.

BCE (Binary Cross-Entropy): Đây là một hàm loss thường được sử dụng cho các

bài toán phân loại nhị phân. Trong YOLOv8, BCE có thể được sử dụng cho các thành

phần phân loại của loss.

Tóm lại:

Backbone: Trích xuất đặc trưng từ ảnh đầu vào.

Head: Dự đoán bounding boxes và lớp đối tượng.

Concat: Nối các tensor lại với nhau.

C2f: Cấu trúc CSP với kỹ thuật tập trung.

Upsample: Tăng kích thước không gian của tensor.

Conv: Tích chập để trích xuất đặc trưng.

Detect: Dự đoán bounding boxes và lớp đối tượng cuối cùng.

Loss Terms:

Bbox: Regression của bounding boxes.

Cls: Phân loại lớp đối tượng.

CIoU: Metric nâng cao cho bounding box regression.

DFL: Kỹ thuật focal loss cho bounding box.

BCE: Hàm loss cho phân loại nhị phân.