Tải bản đầy đủ (.pdf) (62 trang)

ĐỒ án PHÁT HIỆN BẢNG TRONG tài LIỆU DẠNG ẢNH BẰNG PHƯƠNG PHÁP học sâu

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (3.16 MB, 62 trang )

ĐẠI HỌC QUỐC GIA TP. HỒ CHÍ MINH
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
KHOA CÔNG NGHỆ PHẦN MÈM

TRƯƠNG DIỆU LINH

BÁO CÁO ĐỒ ÁN 2
PHÁT HIỆN BẢNG TRONG TÀI LIỆU DẠNG ẢNH BẰNG PHƯƠNG
PHÁP HỌC SÂU
Table Detection in Document Image Using Deep Learning

KỸ SƯ NGÀNH CƠNG NGHỆ PHẦN MỀM

TP. HỒ CHÍ MINH, 2021


ĐẠI HỌC QUỐC GIA TP. HỒ CHÍ MINH
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
KHOA CÔNG NGHỆ PHẦN MỀM

TRƯƠNG DIỆU LINH – 17520691

BÁO CÁO ĐỒ ÁN 2
PHÁT HIỆN BẢNG TRONG TÀI LIỆU DẠNG ẢNH BẰNG PHƯƠNG
PHÁP HỌC SÂU
Table Detection in Document Image Using Deep Learning

KỸ SƯ NGÀNH CÔNG NGHỆ PHẦN MỀM

GIẢNG VIÊN HƯỚNG DẪN
NGUYỄN TẤN TRẦN MINH KHANG



TP. HỒ CHÍ MINH, 2021


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

…………………………………………………………………………………


LỜI CẢM ƠN
Để hồn thành được khóa luận này, lời đầu tiên, tôi xin chân thành
cảm ơn sâu sắc đến thầy TS. Nguyễn Tấn Trần Minh Khang – giảng viên
hướng dẫn của tôi trong môn đồ án lần này. Thầy đã luôn quan tâm, lo lắng,
nhắc nhở cũng như hỗ trợ tơi trong suốt q trình thực hiện đồ án môn học.
Thầy cũng là người đã truyền cảm hứng giúp tôi định hướng trong con
đường học tập và nghiên cứu khoa học. Đồng thời, tôi cũng xin gửi lời cảm
ơn đến thầy ThS. Võ Duy Nguyên đã luôn giúp đỡ, hướng dẫn tận tình, sửa
chữa và đóng góp nhiều ý kiến q báu giúp tơi hồn thành thật tốt báo cáo
mơn học.
Bên cạnh đó, tơi xin gửi lời cảm ơn chân thành đến các em, các bạn,
các anh chị trong nhóm nghiên cứu đã ln đồng hành, giúp đỡ và động viên
tơi trong suốt q trình tơi thực hiện đồ án này.
Tôi cũng xin chân thành cảm ơn tập thể q thầy cơ trường Đại học
Cơng nghệ Thơng tin nói chung và đặc biệt các quý thầy cô khoa Công nghệ
Phần mềm, phịng thí nghiệm Truyền thơng Đa phương tiện MMLab nói
riêng đã truyền đạt kiến thức cho tơi trong suốt q trình tơi học tập tại
trường.
Cuối cùng, tơi muốn gửi lời cảm ơn chân thành nhất đến bố mẹ và
những người trong thân trong gia đình tơi – những người đã luôn động viên,
giúp đỡ, tạo điều kiện và là niềm cảm hứng của tôi trong từng chặng đường.
Trong q trình làm đồ án mơn học, dù có hồn chỉnh đến đâu thì giới
hạn kiến thức sẽ khơng tránh khỏi những sai sót, hạn chế trong đề tài. Tơi
mong nhận được sự góp ý của quý thầy và các bạn để được hồn thiện hơn.
Một lần nữa, tơi xin chân thành cảm ơn!
Sinh viên thực hiện
Trương Diệu Linh


TP.Hồ Chí Minh, ngày 15 tháng 01 năm 2021


MỤC LỤC
Chương 1. TỔNG QUAN ĐỀ TÀI................................................................. 13
1.1. Động lực nghiên cứu........................................................................... 13
1.2. Mục tiêu của đề tài .............................................................................. 14
1.3. Phát biểu bài toán................................................................................ 15
1.4. Đối tượng và phạm vi nghiên cứu ...................................................... 16
1.5. Nội dung thực hiện ............................................................................. 16
1.6. Kết quả của đề tài ............................................................................... 16
1.7. Cấu trúc báo cáo đề tài........................................................................ 17
Chương 2. CÁC NGHIÊN CỨU LIÊN QUAN ............................................. 18
2.1. Giới thiệu tổng quan ........................................................................... 18
2.2. Computer Vision ................................................................................. 20
2.2.1. Giới thiệu...................................................................................... 20
2.2.2. Phân loại ....................................................................................... 20
2.2.3. Ứng dụng ...................................................................................... 21
2.3. Object Detection ................................................................................. 22
2.3.1. Giới thiệu...................................................................................... 22
2.3.2. Phân loại ....................................................................................... 23
2.3.3. Ứng dụng ...................................................................................... 24
2.4. Mơ hình mạng học sâu........................................................................ 24
2.4.1. Mạng nơ-ron nhân tạo .................................................................. 24
2.4.2. Convolutional Neural Network .................................................... 26
2.5. Region Proposal Network ................................................................... 30


2.6. Feature Pyramid Network ................................................................... 31

2.7. Mơ hình phát hiện đối tượng R-CNN ................................................. 32
2.7.1. Tổng quan ..................................................................................... 32
2.7.2. R-CNN ......................................................................................... 32
2.8. Mơ hình phát hiện đối tượng YOLO .................................................. 33
2.8.1. Tổng quan ..................................................................................... 33
2.8.2. YOLOv1 ....................................................................................... 34
2.8.3. YOLOv2 ....................................................................................... 35
2.8.4. YOLOv3 ....................................................................................... 37
2.8.5. YOLOv4 ....................................................................................... 38
2.8.6. Loss Function ............................................................................... 40
Chương 3. THỰC NGHIỆM VÀ ĐÁNH GIÁ............................................... 41
3.1. Mô tả tập dữ liệu thực nghiệm............................................................ 41
3.1.1. Bộ dữ liệu huấn luyện .................................................................. 41
3.1.2. Giới thiệu các lớp đối tượng ........................................................ 42
3.1.3. Đặc điểm của lớp đối tượng trên bộ dữ liệu ................................ 43
3.2. Mơ tả quy trình thực nghiệm .............................................................. 44
3.2.1. Thu thập và tiền xử lý dữ liệu ...................................................... 45
3.2.2. Cài đặt môi trường huấn luyện..................................................... 45
3.2.3. Cài đặt các tham số cho quá trình huấn luyện ............................. 46
3.2.4. Tiến hành huấn luyện model ........................................................ 47
3.3. Phương pháp đánh giá ........................................................................ 48
3.3.1. Intersection over Union (IoU) ...................................................... 48


3.3.2. Average Precision (AP)................................................................ 49
3.3.3. Mean Average Precision (mAP) .................................................. 51
3.4. Đánh giá mơ hình................................................................................ 51
3.5. Kết quả ................................................................................................ 51
3.5.1. Trực quan hóa kết quả .................................................................. 52
3.5.2. Đánh giá kết quả........................................................................... 54

3.5.3. Phân tích đánh giá ........................................................................ 55
Chương 4. KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN ................................... 57
4.1. Kết luận ............................................................................................... 57
4.2. Khó khăn ............................................................................................. 57
4.3. Thuận lợi ............................................................................................. 57
4.4. Hướng phát triển ................................................................................. 58
4.5. Demo sản phẩm ứng dụng trong thực tế............................................. 58
4.5.1. Demo sản phẩm ............................................................................ 58
4.5.2. Môi trường phát triển và triển khai phần mềm ứng dụng ............ 59


DANH MỤC HÌNH
Hình 1-1: Ảnh chứa các đối tượng nghiên cứu trong đề tài. Màu đỏ : bảng
(table) ; màu xanh lá: ảnh (figure) ; màu xanh dương: chú thích (caption) .... 13
Hình 1-2: Đầu vào và đầu ra của bài toán phát hiện bảng trong tài liệu dạng
ảnh a) Ảnh đầu vào ; b) Ảnh đầu ra ................................................................ 16
Hình 2-1: Mối quan hệ giữa AI, Machine Learning và Deep Learning. [13] . 19
Hình 2-2: Sơ đồ các mối liên hệ giữa các tác vụ trong computer vision ........ 21
Hình 2-3: Ví dụ phân biệt các kỹ thuật trong Computer Vision.[14] ............. 23
Hình 2-4: Hình so sánh sự khác nhau của mơ hình one-stage và two-stage.[18]
......................................................................................................................... 24
Hình 2-5: Hình 1 nơ ron thần kinh. [12] ......................................................... 25
Hình 2-6: Kiến trúc mạng nơ ron nhân tạo.[8] ............................................... 25
Hình 2-7: Cấu trúc trong từng nốt của mạng nơ-ron nhân tạo.[8] .................. 26
Hình 2-8: Ý tưởng Local receptive fields trong mơ hình CNN.[9] ................ 27
Hình 2-9: Kiến trúc tổng quan của mơ hình CNN.[15] .................................. 28
Hình 2-10: Ví dụ tính tốn tại tầng tích chập với đầu vào là 5x5, sử dụng hàm
ReLU để tính tốn và bước trượt cho bộ lọc là 1 ............................................ 28
Hình 2-11: Ví dụ phép tổng hợp lớn nhất (maxpooling) cho đầu vào 5x5 và bộ
lọc 3x3 với hai dạng bước trượt là 1 và 2 ....................................................... 29

Hình 2-12: Ví dụ phép tổng hợp trung bình (averagepooling) cho đầu vào 5x5
và bộ lọc 3x3 với hai dạng bước trượt là 1 và 2 ............................................. 29
Hình 2-13: Model Region Proposal Network.[11] ......................................... 30
Hình 2-14: Các mơ hình trích xuất đặc trưng.[10].......................................... 31
Hình 2-15: Kiến trúc mơ hình R-CNN.[5] ...................................................... 33
Hình 2-16: Hình minh họa hoạt động của các mơ hình one-stage (YOLO). [1]
......................................................................................................................... 35
Hình 2-17: Kiến trúc mơ hình YOLOv3.[17] ................................................. 37


Hình 2-18: Kết quả so sánh đánh giá mơ hình phát hiện đối tượng YOLOv4
với các mơ hình state-of-the-art khác.[4] ........................................................ 38
Hình 2-19: Kiến trúc mơ hình object detection .............................................. 39
Hình 2-20: Kiến trúc mạng Dense (DenseNet) [19] ....................................... 39
Hình 3-1: Bảng phân chia bộ dữ liệu .............................................................. 41
Hình 3-2: Bảng phân phối các lớp của toàn bộ tập dữ liệu............................. 42
Hình 3-3: Luồng xử lý quá trình cài đặt, chạy thực nghiệm với mơ hình
YOLOv4 .......................................................................................................... 44
Hình 3-4: Cơng thức minh họa để tính IoU. [16] ........................................... 49
Hình 3-5: Precision and recall [20] ................................................................. 50
Hình 3-6: Biểu đồ thể hiện giá trị độ lỗi sau mỗi vòng lặp và độ đo mAP đánh
giá trong quá trình huấn luyện bằng tập dữ liệu đánh giá (validation) ........... 52
Hình 3-7: Ảnh kết quả dự đoán tốt trên tập dữ liệu kiểm thử (test) a) ảnh đầu
vào; b) ảnh dự đoán với iteration = 1000; c) ảnh dự đoán với iteration = 2000
......................................................................................................................... 53
Hình 3-8: Ảnh kết quả dự đốn xấu trên tập dữ liệu kiểm thử (test) a) ảnh đầu
vào; b) ảnh dự đoán với iteration = 1000; c) ảnh dự đốn với iteration = 2000
......................................................................................................................... 53
Hình 3-9: Biểu đồ phân phối các lớp của tập dữ liệu huấn luyện ................... 56
Hình 3-10: Biểu đồ phân phối các lớp của tập dữ liệu kiểm thử .................... 56

Hình 3-11: Biểu đồ phân phối các lớp của tập dữ liệu kiểm thử .................... 56
Hình 4-1: Phần giao diện của app “table-detection”. a) Màn hình chính chụp
ảnh ; b) Màn hình chọn ảnh từ file ; c) Lịch sử ảnh dự đoán .......................... 58


DANH MỤC BẢNG
Bảng 1-1: Bảng kết quả dự đoán dựa trên mơ hình YOLOv4 ........................ 17
Bảng 03-1: Mơ tả ý nghĩa giá trị các thuộc tính trong file annotations định
dạng txt ............................................................................................................ 45
Bảng 03-2: Bảng đánh giá kết quả dự đốn dựa trên mơ hình YOLOv4 ....... 51


DANH MỤC TỪ VIẾT TẮT
STT
01

Từ viết tắt
CV

02

SOTA

03

OD

04

ANN/NN


05

CNN

06

RNN

07

LSTM

08

YOLO

09

AP

10

mAP

11

FPS

12


BB/RP

13

SS

14

RPN

15

FPN

16

CUDA

17

SSD

Ý nghĩa
Xử lý ảnh – Computer Vision
Cải tiến nhất, hiện đại nhất
– State of the art
Phát hiện đối tượng – Object Detection
Mơ hình mạng nơ ron nhân tạo –
Artificial Neural Network/Neural Network

Mơ hình mạng tích chập –
Convolution Neural Network
Mơ hình mạng nơ ron tái tạo –
Recurrent Neural Network
Kiến trúc của mạng RNN –
Long short-term memory
Thuật toán phát hiện đối tượng YOLO –
You only look once
Độ đo đánh giá mơ hình Object Detection –
Average Precision
Độ đo trung bình AP Measure Average Precision
Độ đo về tốc độ xử lý 1 khung hình trên 1 giây

Frame per second
Khung khoanh các vùng có thể có vật thể ở
trong. –
Bounding Box / Region Proposal
Thuật toán đề xuất khu vực có chọn lọc –
Selective Search
Mạng đề xuất khu vực –
Region Proposal Network
Mơ hình mạng trích xuất đặc trưng Kim tự
tháp – Feature Pyramid Network
Compute Unified Device Architecture
Thuật toán phát hiện đối tượng –
Single Shot Detection

11



TÓM TẮT
Phát hiện bảng trong tài liệu dạng ảnh là một bài toán thuộc lớp các bài
toán đọc hiểu tài liệu dạng ảnh (Document Image Understanding) và có thể sử
dụng các kỹ thuật Object Detection để thực nghiệm.
Trong đề tài này, tôi tập trung vào việc nghiên cứu và thực nghiệm bằng
mơ hình YOLOv4 (You Only Look Once) phiên bản 4 đối với bộ dữ liệu mà
nhóm nghiên cứu đã xây dựng được. Bộ dữ liệu của nhóm gồm 1469 ảnh huấn
luyện (trainning) và 735 ảnh đánh giá (validation) đã được gán nhãn và 500 ảnh
kiểm thử (test), lấy từ tài liệu báo cáo khoa học của tạp chí khoa học tại các hội
nghị trong nước. Các lớp dữ liệu cần dự đoán gồm 3 lớp: table, figure, caption.
Phương pháp sử dụng thực nghiệm cho bài toán là YOLO mà cụ thể hơn là
YOLOv4.

12


Chương 1. TỔNG QUAN ĐỀ TÀI
1.1. Động lực nghiên cứu
Sự phát triển mạnh mẽ của điện thoại thông minh và máy quét khiến cho
nhu cầu lưu trữ tài liệu dạng dưới dạng ảnh đang trở nên rất phổ biến. Vậy nên
các bài toán về đọc hiểu tài liệu dạng ảnh đang trở thành một nhiệm vụ quan
trọng trong thời gian sắp tới. Trong đó, trở ngại lớn đối với việc đọc hiểu tài
liệu bằng ảnh là việc phát hiện và nhận dạng bảng. Vì bảng là đối tượng thường
trình bày các thơng tin cần thiết, có độ quan trọng cao một cách có cấu trúc.
Hầu hết các kĩ thuật thơng thường để phân tích bảng được đề xuất dựa trên
việc phân tích bố cục của tài liệu. Nhưng các kỹ thuật này khơng thể tổng qt
hóa được vì các bảng thường được thiết kế thủ công, với các bố cục, định dạng
khác nhau và cách tổ chức cấu trúc của tài liệu cũng không theo quy chuẩn cố
định nào khiến cho việc phát hiện, nhận dạng bảng đang gặp khá nhiều khó
khăn và thách thức như hình 1-1.


Hình 1-1: Ảnh chứa các đối tượng nghiên cứu trong đề tài. Màu đỏ : bảng
(table) ; màu xanh lá: ảnh (figure) ; màu xanh dương: chú thích (caption)

13


Tuy nhiên, với sự phát triển của Deep learning và computer vision đã mở
ra rất nhiều cơ hội để phát triển những hệ thống máy tính trở nên thơng minh
hơn và có thể giải quyết các cơng việc của con người một cách hiệu quả, thậm
chí hiệu quả hơn con người.
Trước những cơ hội cũng như những thách thức kể trên, nhóm tơi đã
quyết định thực hiện đề tài phát hiện bảng trong tài liệu dạng ảnh bằng phương
pháp học sâu, ứng dụng những nghiên cứu, mơ hình nổi tiếng từ các bài báo
trên thế giới để có thể tìm ra giải pháp tối ưu hơn trong việc phát hiện và nhận
dạng bảng trên các loại tài liệu khác nhau bao gồm PDF, Word, Latex … Cụ
thể hơn trong đồ án lần này, mơ hình học sâu mà tơi muốn hướng tới là
YOLOv4 – một mơ hình “state-of-the-art” (SOTA) phát hiện đối tượng hiệu
quả và có tốc độ nhanh nhất hiện nay.
Lý do lựa chọn YOLOv4 là mơ hình để chạy thực nghiệm với bài toán
Phát hiện bảng trong tài liệu dạng ảnh vì mơ hình YOLOv4 là một mơ hình
phát hiện đối tượng one-stage rất nổi tiếng và được ứng dụng chạy thực nghiệm
khá nhiều, tuy đây là một mơ hình khá phức tạp nhưng có những framework hỗ
trợ giúp dễ cài đặt để chạy thực nghiệm và có nguồn tài liệu tham khảo phong
phú. Trong khi đó, “table” (bảng) cũng là một đối tượng có những đặc trưng
riêng biệt và thuộc lớp bài toán đọc hiểu tài liệu ảnh (Document Image
Understanding) và có thể sử dụng các phương pháp OD để giải quyết.

1.2. Mục tiêu của đề tài
• Nghiên cứu về xử lý ảnh cho bài toán phát hiện bảng trong tài liệu dạng

ảnh.
• Nghiên cứu và cài đặt thực nghiệm phương pháp YOLOv4 trên bộ dữ
liệu được xây dựng.

14


• Xây dựng app demo ứng dụng thực tế cho phát hiện bảng trong tài liệu
dạng ảnh với model đã huấn luyện.

1.3. Phát biểu bài tốn
Trong đề tài này, tơi tiến hành tìm hiểu và nghiên cứu bài tốn phát hiện
đối tượng bảng trong tài liệu dạng ảnh, mà cụ thể hơn là đối tượng bảng trong
các tài liệu ảnh được chụp từ các bài báo khoa học.
Đầu vào:
• Ảnh scan các bài báo khoa học tiếng Việt ở dạng ảnh.
Đầu ra:
• Vị trí các đối tượng: table, figure, caption (nếu có).
• Nhãn các đối tượng và độ tự tin của mơ hình.

15


Hình 1-2: Đầu vào và đầu ra của bài tốn phát hiện bảng trong tài liệu dạng
ảnh a) Ảnh đầu vào ; b) Ảnh đầu ra

1.4. Đối tượng và phạm vi nghiên cứu
Trong phạm vi đề tài lần này, đối tượng nghiên cứu của nhóm sẽ chỉ bao gồm:
• Ảnh scan các bài báo khoa học tiếng Việt.
• File nhãn của ảnh gồm 3 lớp đối tượng: table, figure, caption.

• Phương pháp thực nghiệm: YOLOv4.
1.5. Nội dung thực hiện
Nội dung thực hiện của đề tài “Phát hiện bảng trong tài liệu dạng ảnh bằng
phương pháp học sâu” bao gồm:
• Tìm hiểu bài toán phát hiện bảng trong tài liệu dạng ảnh.
• Nghiên cứu các phương pháp học sâu trong lĩnh vực xử lý ảnh .
• Tiến hành cài đặt, thử nghiệm các phương pháp tiên tiến trên bộ dữ liệu
tự xây dựng.
• Xây dựng bộ dữ liệu.
• Tổng hợp kết quả thực nghiệm, nhận xét, phân tích các kết quả đạt được,
viết báo cáo.
1.6. Kết quả của đề tài
Từ những nghiên cứu trong đề tài, tôi đạt được những kết quả như sau:
• Xây dựng thành cơng bộ dữ liệu chuẩn dựa vào bộ dữ liệu ICDAR2017.
• Tài liệu tổng hợp gồm:
o Phân tích bài tốn
o Các phương pháp học sâu tiên tiến.

16


o Nội dung chi tiết cách cài đặt môi trường, cài đặt tham số để chạy thực
nghiệm.
o Bảng tổng hợp các kết quả thực nghiệm và nhận xét về model đã xây
dựng được.
o Đánh giá thực nghiệm với phương pháp YOLOv4 trên bộ dữ liệu đã
xây dựng được.
o Chi tiết các thay đổi tham số, cải tiến kết quả so với các tham số mặc
định.
• Phần giao diện (UI) của app “table-detection”.

AP
Iteration number

mAP
Table

Figure

Caption

1,000

37.09

33.82

67.44

10

2,000

20.92

17.52

32.85

12.38


Bảng 1-1: Bảng kết quả dự đoán dựa trên mơ hình YOLOv4

1.7. Cấu trúc báo cáo đề tài
Trong báo cáo đồ án môn học này gồm 6 chương với các nội dung như sau:
• Chương 1: Tổng quan đề tài. Trình bày lý do chọn đề tài, phát biểu bài
toán, đối tượng và phạm vi nghiên cứu, mục tiêu, nội dung thực hiện
cũng như kết quả của đề tài đã đạt được.
• Chương 2: Các nghiên cứu liên quan. Giới thiệu các khái niệm về bài
toán phát hiện bảng trong tài liệu dạng ảnh, cơ sở lý thuyết, phân tích
hướng nghiên cứu đã thực hiện liên quan tới bài tốn này.
• Chương 3: Thực nghiệm và đánh giá. Trình bày hướng tiếp cận đối
với bài tốn phát hiện bảng trong tài liệu dạng ảnh. Đồng thời trình bày

17


phương pháp, quá trình cài đặt thực nghiệm với bộ dữ liệu được xây dựng
và các đặc trưng tương ứng.
• Chương 4: Kết luận và hướng phát triển. Tổng kết các kết quả quan
trọng đã đạt được trong đề tài, những hạn chế chưa được giải quyết và
hướng phát triển của đề tài trong tương lai.

Chương 2. CÁC NGHIÊN CỨU LIÊN QUAN
Trong khoảng vài năm trở lại đây sự bùng nổ của Artificial Intelligence (Trí tuệ
nhân tạo) hay cụ thể hơn là Machine Learning (Máy học) và Deep Learning,
Big Data đã giúp con người giải quyết được rất nhiều bài tốn khó và đang tạo
ra những bước đột phá mới trong lĩnh vực công nghệ thông tin. Trong chương
này, tôi sẽ trình bày một số cơ sở lý thuyết, khái niệm cũng như các nghiên cứu
liên quan tới bài toán Phát hiện bảng trong tài liệu dạng ảnh bằng phương pháp
học sâu.

2.1. Giới thiệu tổng quan
Machine Learning là một lĩnh vực của Trí tuệ nhân tạo, liên quan tới việc
nghiên cứu và xây dựng các thuật tốn, mơ hình cho phép các hệ thống có khả
năng "học" tự động từ dữ liệu để giải quyết những vấn đề cụ thể. Nếu như trước
kia, để giải quyết vấn đề, con người sử dụng dòng code để đưa những chỉ thị,
hành động cụ thể cho máy tính thực hiện, thì nay chỉ với dữ liệu và các thuật
tốn, máy tính được huấn luyện và có thể tự mình đưa ra những quyết định hoặc
dự đốn từ q trình học hỏi. Phương pháp này đưa ra kết quả nhanh, chính xác
và hiệu quả, thậm chí cịn tốt hơn con người rất nhiều nhờ áp dụng các thuật
tốn để phân tích, thống kê từ hàng trăm, hàng nghìn dữ liệu. Nói tóm lại,

18


Machine Learning là q trình dạy máy tính có khả năng học hỏi để hồn thành
một nhiệm vụ mà khơng cần kỹ thuật lập trình phức tạp.
Machine Learning là ngành rất rộng về toán, gồm rất nhiều thuật toán và
mỗi thuật tốn có ứng dụng riêng tùy vào bài tốn:
• Linear Regression.
• Logistic Regresstion.
• Decision Tree và Random Forest.
• Support Vector Machines.
• K-Nearest Neighbors.
• Principal component analysis (PCA).
• Neural network.
Trong số đó, Deep learning được bắt nguồn từ thuật tốn Neural network –
một trong những thuật toán lấy cảm hứng từ cấu trúc bộ não con người để xử
lý dữ liệu. Dù chỉ là một ngành nhỏ của Machine Learning nhưng sự phát triển
cùng khả năng tính tốn vượt trội của máy tính và lượng dữ liệu khổng lồ mà
con người tạo ra, những ứng dụng của Deep Learning đã và đang tạo ra những

bước đột phá thực sự lớn.

Hình 2-1: Mối quan hệ giữa AI, Machine Learning và Deep Learning. [13]

19


Trong đồ án này, nhóm tơi quyết định chọn lĩnh vực Thị giác máy tính
(Computer Vision) – một nhánh nhỏ của Deep Learning để thực hiện nghiên
cứu và ứng dụng cho bài toán “Phát hiện bảng trong tài liệu dạng ảnh bằng
phương pháp học sâu”.
2.2. Computer Vision
2.2.1. Giới thiệu
Thị giác máy tính (Computer Vision) là một trong những ứng dụng nổi
bất nhất của Deep Learning. Thị giác máy tính là một lĩnh vực khoa học giúp
máy tính tập trung vào việc tái tạo và mô phỏng các phần phức tạp của hệ thống
thị giác con người và cho phép máy tính xác định và xử lý các đối tượng trong
hình ảnh và video giống như cách con người làm.

2.2.2. Phân loại
Một số kỹ thuật phổ biến trong Computer Vision gồm:
• Nhận diện vật thể (Object Recognition) là một kỹ thuật liên quan đến
việc nhận dạng, xác định và định vị các đối tượng trong một bức ảnh với
một mức độ tin cậy nhất định.
• Phân loại hình ảnh (Image Classification) là một kỹ thuật liên quan đến
việc dự đoán lớp của một đối tượng trong một hình ảnh.
• Định vị vật thể (Object Localization): là một kỹ thuật xác định vị trí của
một hoặc nhiều đối tượng trong một hình ảnh và vẽ bounding box xung
quanh chúng.
• Phát hiện đối tượng (Object Detection): là một kỹ thuật kết hợp phân

loại hình ảnh và định vị vật thể cho một hoặc nhiều đối tượng trong hình
ảnh.

20


• Phân đoạn đối tượng (Object Segmentation) là một kỹ thuật nhận dạng
đối tượng bằng cách nổi bật các pixel cụ thể của đối tượng thay vì
bounding box.
• Chú thích ảnh (Image Captioning) là một kỹ thuật kết hợp giữa các kiến
trúc mạng CNN vs LSTM để đưa ra các lý giải về hành động hoặc mô tả
nội dung của một bức ảnh.

Hình 2-2: Sơ đồ các mối liên hệ giữa các tác vụ trong computer vision

2.2.3. Ứng dụng
Nhờ sự tiến bộ của khoa học và ứng dụng các thuật tốn tiên tiến, chúng ta
đã giúp máy tính có khả năng thu nhận hình ảnh, xử lý và hiểu hình ảnh để ứng
dụng chúng trong mọi lĩnh vực xung quanh ta như:
• Nhận diện khn mặt trong các smartphone (Face ID).
• Kiểm tra các sản phẩm lỗi trong ngành cơng nghiệp sản xuất .
• Hỗ trợ bác sĩ trong chuẩn đốn và điều trị bệnh ung thư dựa vào ảnh.
• Nhận diện biển báo, người đi đường cho các xe tự lái.

21


• Nhận diện cảm xúc để đánh giá hành vi mua hàng trong các cửa hàng.
• Nhận biết trường hợp té ngã để kịp thời cấp cứu dựa vào phát hiện hành
vi dị thường của con người.

2.3. Object Detection
2.3.1. Giới thiệu
Phát hiện đối tượng ( Object Detection) là khía cạnh sâu sắc nhất của thị
giác máy tính do số lần ứng dụng trong thực tế.
Phát hiện đối tượng ( Object Detection) là một thuật ngữ chung để mô tả
một tập hợp các nhiệm vụ thị giác máy tính có liên quan liên quan đến việc xác
định các đối tượng trong ảnh kỹ thuật số. Phát hiện đối tượng ( Object
Detection) kết hợp hai nhiệm vụ gồm phân loại hình ảnh (Image Classification)
và định vị vật thể (Object Localization). Trong đó, ta có thể phân loại các kỹ
thuật trên như sau:
• Phân loại hình ảnh (Image Classification): Dự đốn nhãn của một đối tượng
trong một hình ảnh.
o Input: Một hình ảnh với một đối tượng, chẳng hạn như một bức ảnh.
o Output: Nhãn lớp (ví dụ: một hoặc nhiều số nguyên được ánh xạ tới nhãn
lớp).
• Định vị đối tượng (Object Localization): Xác định vị trí hiện diện của các
đối tượng trong ảnh và cho biết vị trí của chúng bằng bounding box.
o Input: Một hình ảnh có một hoặc nhiều đối tượng, chẳng hạn như một
bức ảnh.
o Output: Một hoặc nhiều bounding box được xác định bởi tọa độ tâm,
chiều rộng và chiều cao.
• Phát hiện đối tượng (Object Detection): Xác định vị trí hiện diện của các
đối tượng trong bounding box và nhãn của các đối tượng nằm trong một
hình ảnh.
o Input: Một hình ảnh có một hoặc nhiều đối tượng, chẳng hạn như một
bức ảnh.

22



o Output: Một hoặc nhiều bounding box và nhãn cho mỗi bounding box.

Hình 2-3: Ví dụ phân biệt các kỹ thuật trong Computer Vision.[14]
2.3.2. Phân loại
Thuật toán Object Detection bao gồm 2 nhóm chính:
• Two-stage: bao gồm họ các mơ hình R-CNN (Region-Based Convolutional
Neural Networks), Mask R-CNN… Gọi là two-stage vì model sẽ thực hiện
2 phần gồm trích chọn (extract) các vùng trên ảnh có khả năng chứa đối
tượng dựa vào các anchor box, sau đó sẽ thực hiện tiếp phân loại đối tượng
và xác định vị trí nhờ vào việc chia làm 2 nhánh tại phần cuối của mô hình
(Object Classification và Bounding Box Regression). Các mơ hình này được
dùng để giải quyết các bài toán định vị và nhận diện vật thể tĩnh (hình ảnh)
do yêu cầu cao về độ chính xác nhưng khơng u cầu q cao về tốc độ.
• One-stage hay cịn gọi là single-stage: Bao gồm các mơ hình YOLO (You
Only Look Once), SSD (Single Shot MultiBox Detector), Restina... Gọi là
one-stage vì model sẽ khơng có phần trích chọn các vùng đặc trưng như
two-stage. Các mơ hình one-stage sẽ coi việc phát hiện đối tượng như một
bài toán regression và dựa trên pre-define box hay cịn gọi là anchor để phát
hiện đối tượng. Các mơ hình one-stage thường có tốc độ nhanh hơn tuy

23


nhiên độ chính xác thường kém hơn so với two-stage và thường được dùng
để nhận dạng đối tượng, đặc biệt là các đối tượng real time.

Hình 2-4: Hình so sánh sự khác nhau của mơ hình one-stage và two-stage.[18]
2.3.3. Ứng dụng
• Phát hiện xe để giúp phân luồng giao thơng.
• Đếm số người đi bộ trên đường.

• Phát hiện vật cản ứng dụng trong sản xuất xe không người lái.

2.4. Mơ hình mạng học sâu
2.4.1. Mạng nơ-ron nhân tạo
Mạng nơ-ron nhân tạo (Artificial Neural Networks - ANNs) hay gọi tắt
Neural Networks (NNs) là mạng lưới thần kinh được liên kết đầy đủ giữa các
lớp với nhau. ANN được ra đời xuất phát từ ý tưởng mô phỏng hoạt động của
não bộ con người.

24


Hình 2-5: Hình 1 nơ ron thần kinh. [12]
Kiến trúc của một mạng nơ-ron nhân tạo gồm ba thành phần: lớp đầu
vào, các lớp ẩn và lớp đầu ra. Trên mỗi lớp có các node được thể hiện như các
nơ-ron thần kinh, mỗi node trong một lớp thì liên kết với tất cả các node trong
lớp tiếp theo. Trong một mạng nơ-ron nhân tạo thì số lớp ẩn là khơng giới hạn
và số lượng các nơ ron trên mỗi lớp cũng khơng giới hạn. Chi tiết hơn ở hình
02-6.

Hình 2-6: Kiến trúc mạng nơ ron nhân tạo.[8]

25


×