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

Ứng dụng thị giác máy tính để trích xuất số báo danh và điểm thi tuyển sinh lớp 10 trường thpt vũng tàu

93 1 0

Đ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 đề Ứng Dụng Thị Giác Máy Tính Để Trích Xuất Số Báo Danh Và Điểm Thi Tuyển Sinh Lớp 10 Trường THPT Vũng Tàu
Tác giả Trần Ngọc Đông Chu
Người hướng dẫn TS. Phan Ngọc Hoàng
Trường học Trường Đại Học Bà Rịa – Vũng Tàu
Chuyên ngành Công Nghệ Thông Tin
Thể loại Luận Văn Thạc Sĩ
Năm xuất bản 2023
Thành phố Vũng Tàu
Định dạng
Số trang 93
Dung lượng 2,21 MB

Nội dung

Tổng quan Hiện nay, việc xử lý nhận dạng các chữ số viết tay đã trở thành một vấn đề cấp bách trong nhiều lĩnh vực và được ứng dụng phổ biến trong đời sống hằng ngày như nhận dạng số điể

Trang 1

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

TRƯỜNG ĐẠI HỌC BÀ RỊA – VŨNG TÀU

- -

TRẦN NGỌC ĐÔNG CHU

ỨNG DỤNG THỊ GIÁC MÁY TÍNH ĐỂ TRÍCH XUẤT SỐ BÁO DANH VÀ ĐIỂM THI

TUYỂN SINH LỚP 10 TRƯỜNG THPT VŨNG TÀU

LUẬN VĂN THẠC SĨ

Vũng Tàu, tháng 09 năm 2023

Trang 2

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

TRƯỜNG ĐẠI HỌC BÀ RỊA – VŨNG TÀU

- -

TRẦN NGỌC ĐÔNG CHU

ỨNG DỤNG THỊ GIÁC MÁY TÍNH ĐỂ TRÍCH XUẤT SỐ BÁO DANH VÀ ĐIỂM THI

TUYỂN SINH LỚP 10 TRƯỜNG THPT VŨNG TÀU

Trang 3

LỜI CAM ĐOAN

Tôi xin cam đoan rằng đây là kết quả của quá trình nghiên cứu và tìm hiểu của

bản thân, được hướng dẫn bởi TS Phan Ngọc Hoàng Tất cả các nội dung và kết quả

đều trung thực và chưa được công bố

Luận văn là một sự nỗ lực mà tôi đã tâm huyết để nghiên cứu trong quá trình học tập tại trường Các số liệu, kết quả nằm trong luận văn là trung thực, có nguồn gốc rõ ràng và chưa được công bố trong các công trình khác Tất cả các tài liệu tham khảo đều có xuất xứ rõ ràng và được trích dẫn hợp pháp

Tôi chịu trách nhiệm hoàn toàn về nội dung và các lỗi liên quan theo quy định của lời cam đoan

Tác giả

TRẦN NGỌC ĐÔNG CHU

Trang 4

LỜI CẢM ƠN

Đầu tiên, tôi xin bày tỏ lòng biết ơn chân thành và sâu sắc nhất tới giảng viên hướng dẫn TS Phan Ngọc Hoàng về những đóng góp ý kiến chuyên môn trong suốt quá trình tôi viết luận văn tốt nghiệp Được sự hướng dẫn tận tình của thầy và được Nhà trường tạo điều kiện thuận lợi, tôi đã có một quá trình học tập và nghiên cứu thuận lợi nhất để hoàn thành luận văn thạc sỹ

Trong quá trình thực hiện luận văn không thể nào tránh khỏi những hạn chế và sai sót Tôi rất mong nhận được sự góp ý, nhận xét của quý thầy cô để hoàn thiện hơn

Tôi chân thành cảm ơn:

- Ban Giám Hiệu Nhà trường, Viện Đào tạo Sau đại học và Phát triển nguồn nhân lực – Trường Đại học Bà Rịa Vũng Tàu đã quan tâm và tạo điều kiện tốt nhất

để giúp tôi hoàn thành luận văn tốt nghiệp

- TS Phan Ngọc Hoàng là người đã hướng dẫn, hỗ trợ tôi về phương pháp, lý luận và hoàn thành nội dung luận văn tốt nhất

Cuối cùng, tôi vô cùng biết ơn gia đình, các anh chị đồng nghiệp, Lãnh đạo trường THPT Vũng Tàu đã tạo điều kiện, động viên và giành những điều kiện tốt nhất

để tôi có thể hoàn thành chương trình nghiên cứu của mình

TRẦN NGỌC ĐÔNG CHU

Bà Rịa Vũng Tàu, tháng 9/2023

Trang 5

MỤC LỤC

DANH MỤC CÁC TỪ VIẾT TẮT vi

DANH MỤC CÁC BẢNG BIỂU vii

DANH MỤC CÁC HÌNH VẼ viii

MỞ ĐẦU 1

CHƯƠNG 1 GIỚI THIỆU 2

1.1 Đặt vấn đề 2

1.2 Mục tiêu của luận văn 3

1.2.1 Nội dung nghiên cứu 3

1.2.2 Mục tiêu nghiên cứu 4

1.3 Phạm vi nghiên cứu 4

1.4 Ý nghĩa của đề tài 4

1.4.1 Ý nghĩa khoa học 4

1.4.2 Ý nghĩa thực tiễn 4

1.5 Bố cục luận văn 5

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

2.1 Tổng quan 6

2.1.1 Các vấn đề cơ bản về xử lý ảnh 8

2.1.2 Ảnh số và điểm ảnh 8

2.1.3 Nắn chỉnh biến dạng 10

2.1.4 Khử nhiễu 12

2.1.5 Chỉnh mức xám 13

2.1.6 Biên 14

2.2 Những kỹ thuật xử lý ảnh 15

2.2.1 Lọc mịn ảnh 15

2.2.2 Nhị phân ảnh 15

2.2.3 Lấy mẫu 18

Trang 6

2.2.4 Lấy ngưỡng 21

2.2.5 Chỉnh nghiêng 23

2.3 Một số phương pháp xử lý ảnh số [1] 24

2.3.1 Các kỹ thuật lọc nhiễu 24

2.3.2 Kỹ thuật phân ngưỡng 26

2.4 Các phương pháp nhận dạng chữ số viết tay 28

2.4.1 Phương pháp đối sánh mẫu 28

2.4.2 Phương pháp tiếp cận cấu trúc 28

2.4.3 Phương pháp học máy với SVM (Support Vector Machine) 29

2.4.4 Điểm ảnh (Pixel) 31

2.4.5 Độ xám của ảnh 32

2.4.6 Độ nhiễu của ảnh 32

2.5 Biên và các kỹ thuật tìm biên 33

2.5.1 Dò biên và mã hóa đường biên 33

2.5.2 Xác định hướng của điểm biên (Freeman code) 34

2.5.3 Làm trơn đường biên 34

2.5.4 Phương pháp phát hiện biên cục bộ Gradient 35

2.5.5 Thuật toán tìm biên Canny [8] 36

CHƯƠNG 3 MÔ HÌNH MẠNG NƠ-RON TÍCH CHẬP 37

3.1 Mạng Nơ-ron nhân tạo (ANN) 37

3.1.1 Khái niệm về Nơ-ron sinh học 37

3.1.2 Mạng Nơ-ron nhân tạo 38

3.1.3 Kiến trúc mạng 40

3.1.4 Mạng một tầng 40

3.1.5 Mạng đa tầng 41

3.1.6 Huấn luyện mạng Nơ-ron 42

3.2 Mạng Nơ-ron tích chập (Convolutional Neural Networks – CNNs) [16] 46 3.2.1 Khái niệm CNNs 46

Trang 7

3.2.2 Tích chập (Convolution) 47

3.2.3 Cấu trúc mạng Nơ-ron tích chập 48

3.2.4 Những phương pháp tích chập 48

CHƯƠNG 4 XÂY DỰNG CHƯƠNG TRÌNH THỰC NGHIỆM NHẬN DẠNG CHỮ SỐ VIẾT TAY 55

4.1 Mô tả bài toán nhận dạng chữ viết tay 55

4.1.1 Nội dung 55

4.1.2 Dữ liệu đầu vào của bài toán 55

4.2 Thuật toán nhận diện số báo danh và điểm và điểm 56

4.2.1 Chi tiết quá trình thực hiện thuật toán nhận dạng 56

4.2.2 Tiền xử lý ảnh 58

4.2.3 Xác định biên, tách vùng số báo danh và điểm 59

4.2.4 Xây dựng mạng Nơ-ron nhận dạng chữ số viết tay [18 - 19] 60

4.2.5 Huấn luyện mạng Nơ-ron 61

4.3 Xây dựng chương trình thử nghiệm 63

4.3.1 Giới thiệu python 63

4.3.2 Giới thiệu về thư viện mã nguồn mở OpenCV 63

4.3.3 Giới thiệu về Tensorflow 64

4.3.4 Xây dựng mô hình mạng tích chập của nhận dạng chữ số viết tay trong nhận dạng số báo danh và điểm thi 65

4.4 Xây dựng thực nghiệm 72

4.4.1 Chấm điểm từ file 73

4.4.2 Kết quả chương trình thực nghiệm 75

4.4.3 Kết quả của thuật toán đã đề xuất 77

4.5 Đánh giá kết quả 77

KẾT LUẬN VÀ KIẾN NGHỊ 79

TÀI LIỆU THAM KHẢO 81

Trang 8

4 THPTVT Trung học phổ thông Vũng Tàu

5 CNN Mạng Nơ-ron tích chập (Convolutional Nơ-ron Network)

6 FC Kết nối đầy đủ (Fully Connected)

7 MLP Perceptron nhiều lớp (Multilayer Perceptron Classifier)

8 SGD&ĐT Sở Giáo Dục và Đào Tạo

10 SBD Số báo danh và điểm

Trang 9

DANH MỤC CÁC BẢNG BIỂU

Bảng 4 1 Kết quả huấn luyện 3 bộ dữ liệu 73

Bảng 4 2 Kết quả cắt số báo danh 74

Bảng 4 3 Dữ liệu cắt từng vị trí 75

Bảng 4 4 Kết quả mô hình dự báo 75

Bảng 4 5 Kết quả chương trình thực nghiệm 76

Trang 10

DANH MỤC CÁC HÌNH VẼ

Hình 2 1 Mô hình chung cho bài toán nhận diện ảnh 7

Hình 2 2 Ảnh đơn sắc 8

Hình 2 3 Ảnh màu 9

Hình 2 4 Các màu cơ bản trong hệ màu 9

Hình 2 5 Ảnh thu nhận và ảnh mong muốn 10

Hình 2 6 Trước khi nắn chỉnh 11

Hình 2 7 Sau khi nắn chỉnh 12

Hình 2 8 Ảnh trước và sau khi khử nhiễu 12

Hình 2 9 Ảnh trước và sau khi chỉnh mức xám 13

Hình 2 10 Các loại đường biên 15

Hình 2 11 Các dạng mẫu điểm ảnh 21

Hình 2 12 Lấy ngưỡng 22

Hình 2 13 Siêu phẳng chia dữ liệu thành 2 lớp + và - 30

Hình 2 14 Hướng quy ước mã hóa 34

Hình 2 15 Đường biên đã được mã hóa 34

Hình 3 1 Nơ-ron sinh học mô hình 37

Hình 3 2 Mô hình Nơ-ron nhân tạo ở mức đơn giản 38

Hình 3 3 Hàm Heaviside 39

Hình 3 4 Mô hình mạng 1 tầng 41

Hình 3 5 Mô mạng đa tầng 42

Hình 3 6 Mô hình mạng nơ ron truyền thống 47

Hình 3 7 Minh họa tích chập 47

Hình 3 8 Minh họa mô hình CNNs 48

Hình 3 9 Ma trận điểm ảnh (ảnh gốc) và ma trận kernel 49

Hình 3 10 Minh họa phương pháp SAME 50

Hình 3 11 Minh họa phương pháp FULL 51

Hình 3 12 phương pháp VALID 52

Hình 3 13 Minh họa cách biểu diễn ảnh 53

Trang 11

Hình 3 14 Minh họa kết quả tích chập trong kỹ thuật blur 53

Hình 3 15 Minh họa kết quả tích chập trong kỹ thuật Outline 54

Hình 3 16 Minh họa kết quả tích chập trong kỹ thuật Emboss 54

Hình 4 1 Mẫu phiếu điểm 55

Hình 4 2 Minh họa kết quả xác định vùng và biên chứa các ký tự số viết tay 56

Hình 4 3 Mô hình tổng quát 57

Hình 4 4 Mô hình tiền xử lý ảnh 58

Hình 4 5 Ảnh đầu vào trước 59

Hình 4 6 Ảnh sau khi thực hiện bước tiền xử lý 59

Hình 4 7 Mô hình xác định biên và tách vùng số báo danh và điểm 59

Hình 4 8 Các bước tiền xử lý ảnh phiếu chấm 60

Hình 4 9 Mô hình mô phỏng mạng Nơ-ron được sử dụng 61

Hình 4 10 Một số chữ số viết tay của tập dữ liệu MINST 63

Hình 4 11 Kiến trúc thư viện OpenCV 64

Hình 4 12 Hình chiếu minh hoạ của tập dữ liệu 66

Hình 4 13 Một vài mẫu trong tập tin MNIST 66

Hình 4 14 Một vài mẫu tập dữ liệu được thu thập dựa trên phiếu chấm thi 66

Hình 4 15 Mô hình đầy đủ của CNNs 69

Hình 4 16 Dữ liệu tự tạo 72

Hình 4 17 Dữ liệu MINST 72

Hình 4 18 Dữ liệu kết hợp 73

Hình 4 19 Mẫu phiếu chấm điểm 74

Hình 4 20 Dữ liệu chấm thi trong thư mục chấm 75

Hình 4 21 Kết quả chấm 76

Trang 12

MỞ ĐẦU

Ngày nay, sự tiến bộ trong lĩnh vực công nghệ bán dẫn đã làm cho kích thước

máy tính giảm nhỏ hơn, việc sử dụng năng lượng giảm dần trong khi khả năng xử lý

lại tăng lên Với những lợi ích này, vô số thiết bị thông minh đã và đang trở thành

một phần không thể thiếu trong cuộc sống hàng ngày, từ điện thoại thông minh, máy

ảnh số, tới camera hành trình, tất cả đều có độ phân giải cao, bộ nhớ lớn và vi xử lý

mạnh mẽ Thêm vào đó, với sự phát triển mạnh mẽ của xu hướng Internet của Mọi

Thứ (IOT), chúng ta có thể mong đợi thấy nhiều thiết bị thông minh mới như xe tự

lái, thiết bị giao hàng không người lái, Trí thông minh nhân tạo đã và đang ngày

càng được ứng dụng nhiều hơn trong việc xử lý dữ liệu hình ảnh từ các thiết bị thông

minh này trong tương lai, và đây ngày một trở thành xu hướng chung

Trong lĩnh vực xử lý ảnh, nhận dạng mẫu ảnh luôn là một thách thức lớn đối

với các nhà nghiên cứu trong những năm qua Thị giác máy tính cũng được ứng dụng

rộng rãi và đóng vai trò quan trọng trong lĩnh vực giáo dục Trong đó, ứng dụng của

thị giác máy tính là công cụ để người học có thể trải nghiệm cho nghiên cứu học tập,

và còn là công cụ để giáo viên có thể tiết kiệm sức lao động trong việc tổ chức chấm

các kỳ thi tự luận và trắc nghiệm thông qua việc xử lý hình ảnh các phiếu chấm

Hiện nay tỉnh Bà Rịa – Vũng Tàu đang triển khai đến các ban ngành đoàn thể

ứng dụng CNTT trong quản lý Để hưởng ứng tinh thần đó ngành giáo dục là một

trong những cơ quan đi đầu trong việc đổi mới quản lý và ứng dụng CNTT trong việc

dạy và học Việc chấm thi tự luận và vào điểm cho học sinh đối với giáo viên là một

quy trình mất thời gian và dễ sai sót điểm nhất, nên việc ứng dụng CNTT vào việc

này sẽ giúp cho giáo viên bớt đi thời gian và tăng độ chính xác trong công việc

Trang 13

CHƯƠNG 1 GIỚI THIỆU 1.1 Đặt vấn đề

Trí tuệ nhân tạo (Artificial Intelligence), thị giác máy tính (Computer Vision), thực tế ảo (Virtual Reality) hiện nay là một trong các công cụ hữu ích giúp cho con người xử lý rất nhiều việc trong cuộc sống hằng ngày

Trong lĩnh vực Giáo dục, thị giác máy tính, thực tế ảo được ứng dụng rộng rãi và đóng vai trò quan trọng Các ứng dụng thực tế ảo là công cụ để giúp học sinh trải nghiệm những kiến thức ngay tại lớp mà không cần trực tiếp đến lớp và các ứng dụng trong lĩnh vực thị giác máy tính giúp giảng dạy tốt hơn giáo viên Trường THPT Vũng Tàu có số lượng học sinh đông nhất tỉnh BR-VT, với

số lượng hàng năm khoảng 2000-2300 học sinh Việc triển khai chấm bài thi các môn tự luận sau đó nhập dữ liệu vào máy tính rất mất nhiều thời gian và dễ xảy

ra những sai sót về điểm số trong quá trình nhập liệu

Bài toán đặt ra làm cách nào để tự động hóa việc quét bài kiểm tra tự luận

và tìm ra vị trí số báo danh, điểm môn tự luận sau đó xuất sang file excel để hỗ trợ cho việc đưa điểm vào phần mềm khác

Đây là một bài toán thực tế hiện nay các trường THPT trong tỉnh BR-VT đang rất cần thiết trong việc đổi mới quản lý giáo dục cũng như ứng CNTT trong giáo dục

Trước thực tiễn đó, em đã chọn và nghiên cứu đề tài: “Ứng dụng thị giác máy tính để trích xuất số báo danh và điểm thi tuyển sinh lớp 10 tại trường THPT Vũng Tàu” làm hướng nghiên cứu đề tài luận văn Trong luận văn này

tác giả nghiên cứu các thuật toán thị giác máy tính nhằm nhận dạng chữ số viết tay của số báo danh và điểm thi trên phiếu chấm thi Kết quả nghiên cứu của luận văn này có tiềm năng ứng dụng rộng rãi trong các kỳ thi tuyển sinh vào lớp

10, kỳ thi tốt nghiệp THPT, và các kỳ thi do Sở Giáo dục và Đào tạo tỉnh BRVT

tổ chức

Trang 14

1.2 Mục tiêu của luận văn

- Đối tượng nghiên cứu: Các vấn đề liên quan liên quan đến phương pháp nhận dạng hình ảnh, xử lý hình ảnh cụ thể như sau:

1.2.1 Nội dung nghiên cứu

- Khảo sát hiện trạng thực tiễn về về nhu cầu cần sử dụng phần mềm nhận dạng chữ

số viết tay của trường THPT Vũng Tàu

- Thu thập các biểu mẫu phiếu chấm tay trong các kỳ thi tuyển sinh lớp 10

- Tiền xử lí dữ liệu các biểu mẫu

- Nghiên cứu về lý thuyết của các kỹ thuật nhận diện chữ số viết tay hiện nay

- Nghiên cứu đề xuất mô hình về các ứng dụng liên quan để có thể áp dụng vào bài toán thực tế

- Nghiên cứu bộ dữ liệu viết tay MNIST;

- Nghiên cứu ngôn ngữ lập trình python;

- Nghiên cứu tổng quan về xử lý ảnh;

- Nghiên cứu thuật toán mạng Nơ-ron tích chập (CNN);

- Nghiên cứu áp dụng vào hệ thống nhận dạng chữ số viết tay, xử lý ảnh dựa trên phiếu điểm tự luận tại trường THPT Vũng Tàu

Hiện nay, trường THPT Vũng Tàu chưa có ứng dụng về việc nhận dạng chữ số viết tay trên bài thi tuyển sinh vào lớp 10 Do đó, nhu cầu về việc trích xuất dữ liệu từ bài làm của học sinh và đánh giá bài làm của học sinh bằng cách áp dụng thuật toán nhận dạng chữ số viết tay là vấn đề cần thiết Việc nhận diện số báo danh SBD và điểm từ

Trang 15

phiếu chấm điểm tự luận là một hướng nghiên cứu mới và cần thiết được thực hiện

- Mục tiêu cụ thể

 Xây dựng mô hình nhận dạng chữ số viết tay dựa trên mạng Nơ-ron tích chập (CNN);

 Xây dụng mô hình xử lý ảnh trên phiếu điểm tự luận;

 Áp dụng mô hình để trích xuất số báo danh và điểm trên phiếu điểm tự luận tại Trường THPT Vũng Tàu

1.3 Phạm vi nghiên cứu

- Nhận dạng chữ viết tay trên phiếu điểm từ 0 đến 9 {0,1,2,3,4,5,6,7,8,9}

- Các phương pháp, thuật toán phục vụ cho việc phát hiện và xác định vị trí khu vực phiếu điểm có ghi điểm bằng chữ viết tay

- Ánh sáng bình thường, không chói sáng

- Ảnh có chất lượng cao

1.4 Ý nghĩa của đề tài

1.4.1 Ý nghĩa khoa học

- Nghiên cứu lý thuyết thuật toán thị giác máy tính

- Đề xuất mô hình nhận dạng chữ số viết tay

- Đánh giá hiệu suất của phương pháp bằng thực nghiệm trên một số mẫu dữ liệu cụ thể

1.4.2 Ý nghĩa thực tiễn

- Kết quả nghiên cứu của đề tài có thể ứng dụng vào thực tế giải quyết việc nhập bằng tay các điểm ghi trên phiếu chấm bài tự luận của giáo viên vào máy tính tại trường THPT Vũng Tàu

Trang 16

- Mang lại sự thuận tiện, tiết kiệm chi phí, thời gian cho giáo viên – học sinh

- Là nền tảng, bước đầu tiên trong việc phát triển các tính năng mới dựa trên hệ thống đã có

- Từng bước hội nhập với công nghệ 4.0, thúc đẩy các ngành nghề khác phát triển

1.5 Bố cục luận văn

Chương 1: Giới thiệu

Chương 2: Cơ sở lý thuyết

Chương 3: Mô hình mạng Nơ-ron tích chập

Chương 4: Xây dựng chương trình thực nghiệm nhận dạng chữ số viết tay

Trang 17

CHƯƠNG 2 CƠ SỞ LÝ THUYẾT 2.1 Tổng quan

Hiện nay, việc xử lý nhận dạng các chữ số viết tay đã trở thành một vấn đề cấp bách trong nhiều lĩnh vực và được ứng dụng phổ biến trong đời sống hằng ngày như nhận dạng số điểm trên bảng, chữ số viết tay hay nhận dạng biển số xe Tuy nhiên, đây là một khó khăn lớn đối với các nhà khoa học bởi vì mỗi người có một nét chữ viết chữ

số không giống nhau Vì vậy, không thể tìm ra một phương pháp nhận dạng duy nhất

để đáp ứng tất cả các yêu cầu của nhiều người Để tạo ra một ứng dụng nhận dạng được chữ số viết tay chính xác cho mọi người là điều rất khó khăn

Sau đây là một số phương pháp hay dùng hiện nay:

- K-nearest neighbors (KNN): Phương pháp này dựa trên việc so sánh đặc trưng

của ảnh số cần nhận diện với các ảnh số mẫu đã được gán nhãn trước đó Ảnh mẫu gần nhất với ảnh số cần nhận diện được xác định và số tương ứng với ảnh mẫu đó được gán cho ảnh số cần nhận diện

- Support Vector Machines (SVMs): Phương pháp này dựa trên việc tìm một ranh

giới phân chia tốt nhất giữa các lớp số trong không gian đặc trưng Mỗi ảnh số được biểu diễn bằng một vectơ đặc trưng và được phân loại vào lớp tương ứng dựa trên vị trí của nó trong không gian đặc trưng

- Neural networks: Phương pháp này sử dụng các mạng nơ-ron để học các đặc

trưng của ảnh số và tạo ra một mô hình phân loại Các mô hình này có thể được đào tạo để phân loại các ảnh số viết tay cho độ chính xác tương đối cao

- Convolutional Neural Networks (CNNs): Đây là một loại mạng nơ-ron sử dụng

để xử lý ảnh và chuyên dụng cho các bài toán nhận diện hình ảnh CNNs có thể học các đặc trưng của ảnh số thông qua các bộ lọc và đạt được độ chính xác cao trong việc phân loại các ảnh số viết tay

- Recurrent Neural Networks (RNNs): Phương pháp này sử dụng mạng nơ-ron tái

phát (RNN) để xử lý các chuỗi các ảnh số viết tay Mạng RNN có khả năng lưu trữ trạng thái trước đó và đưa ra dự đoán cho ảnh số tiếp theo dựa trên trạng thái trước

đó và thông tin mới được cung cấp

Trang 18

- Transfer Learning: Phương pháp này sử dụng các mô hình học sâu đã được đào

tạo trước đó trên các tập dữ liệu lớn để giúp đào tạo mô hình nhận diện chữ số viết tay với ít dữ liệu huấn luyện hơn Các mô hình này đã được đào tạo trên các tập dữ liệu lớn như CIFAR-10, MNIST, và ImageNet và có khả năng trích xuất được các đặc trưng chung của hình ảnh

- K-Means clustering: Phương pháp này sử dụng thuật toán phân cụm K-means để

phân cụm các pixel trong ảnh số thành các cụm khác nhau Sau đó, các cụm này được

sử dụng để tạo ra các vectơ đặc trưng cho ảnh số, từ đó mô hình có thể học và phân loại chúng

- Naive Bayes: Phương pháp này dựa trên định lý Bayes và giả sử các đặc trưng của

ảnh số độc lập với nhau Mô hình Naive Bayes tính xác suất của mỗi lớp số cho ảnh

số mới bằng cách tính xác suất của từng đặc trưng cho mỗi lớp số, sau đó kết hợp chúng để tính toán xác suất của từng lớp số

- Random Forests: Phương pháp này sử dụng một danh sách các cây quyết định

dùng để phân loại các ảnh chữ số viết tay Các cây quyết định được đào tạo trên các tập con của dữ liệu và bình chọn của tất cả các cây quyết định được sử dụng để đưa

ra quyết định cuối cùng cho mỗi ảnh số

Trong luận văn này, tôi chọn phương pháp CNN để xây dựng chương trình nhận diện

chữ số viết tay

Hình 2 1 Mô hình chung cho bài toán nhận diện ảnh

Trang 19

2.1.1 Các vấn đề cơ bản về xử lý ảnh

2.1.2 Ảnh số và điểm ảnh

Ảnh số (digital image) là một loại ảnh được biểu diễn trên máy tính dưới dạng các điểm ảnh (pixels) Mỗi điểm ảnh là một mức xám hoặc một giá trị màu RGB được lưu trữ dưới dạng thông tin số học Quá trình xử lý ảnh số (digital image processing)

là khoa học kỹ thuật xử lý ảnh trên máy tính, tập trung vào các phương pháp tiền xử

lý, phân đoạn, nâng cao, nhận dạng và hiển thị ảnh số

Các phương pháp tiền xử lý bao gồm xử lý độ sáng, cân bằng độ sáng, lọc nhiễu và cắt ảnh Trong khi đó, các phương pháp phân đoạn và nâng cao giúp phân tích và phân loại các thành phần của ảnh như vùng, cạnh, đối tượng và nền Nhận dạng ảnh số là quá trình xác định các đối tượng hoặc khung ảnh và gán cho chúng các nhãn và ký hiệu Ngoài ra, hiển thị ảnh số cũng là một phần rất quan trọng của xử

lý ảnh số, giúp chúng ta hiển thị ảnh theo cách mà ta muốn để thể hiện và phân tích thông tin đó trong quá trình giải quyết các bài toán của mình [8]

Xét về mặt công nghệ, ảnh đơn sắc nói riêng và ảnh nói chung đều được cấu tạo từ các điểm ảnh (còn gọi là pixel ) Mỗi điểm ảnh của ảnh đơn sắc được mã hóa trên 8 bit Một ảnh đơn sắc có các pixel giá trị từ 0 255 Càng về 0 thì ảnh càng tối,

và ngược lại càng về 255 thì càng sáng.[14]

Hình 2 2 Ảnh đơn sắc

Trang 20

Ảnh màu được tổ hợp từ 3 màu cơ bản là đỏ (Red), xanh lá (Green) và xanh lam (Blue) Mỗi điểm ảnh của ảnh màu được mã hóa trên 24 bit, 24 bit này được chia thành 3 khoảng 8 bit [14]

Hình 2 3 Ảnh màu RGB viết tắt của red (đỏ), green (xanh lục), blue (xanh lam), là ba màu chính của ánh sáng khi tách ra từ lăng kính Khi trộn ba màu trên theo tỉ lệ nhất định có thể tạo thành các màu khác nhau

Hình 2 4 Các màu cơ bản trong hệ màu Mỗi bộ ba giá trị R, G, B có thể tạo thành một màu khác nhau trong hệ màu RGB với giá trị từ 0 đến 255 Có tổng cộng 16777216 màu có thể tạo ra bằng cách chọn một giá trị R, G, B từ mỗi tập giá trị từ 0 đến 255 Vì vậy, để lưu trữ và xử lý

Trang 21

thuận tiện, mỗi điểm ảnh sẽ được tách thành ba ma trận tương ứng với các giá trị R,

G, B

2.1.3 Nắn chỉnh biến dạng

Nắn chỉnh biến dạng là một kỹ thuật xử lý ảnh để điều chỉnh hình dạng của đối tượng trong ảnh, hoặc để bổ sung thông tin không gian vào ảnh Có rất nhiều phương pháp để nắn chỉnh biến dạng, trong đó phương pháp chính là phương pháp đối sánh hình ảnh Phương pháp này sẽ so sánh hình ảnh gốc với một ảnh mẫu đã biết trước và sử dụng một số thuật toán để nắn chỉnh hình dạng của đối tượng trên ảnh gốc

Biến dạng thường xuyên xảy ra trên ảnh thu được do các thiết bị quang học và điện

để mô phỏng, và biến dạng có thể được thể hiện như:

Trang 22

Đồng thời, một khi ước lượng của tham số (ai, bi) có thể thu được, hàm biến dạng có thể được biết, và ánh xạ biến dạng không gian đã sửa có thể được đạt được bằng phép biến đổi đa thức trên

Phương trình trên là phương trình bậc hai nhị phân với 6 thông số Một khi sáu cặp điểm tương ứng có thể được tương ứng được lấy từ hình ảnh bị bóp méo và ảnh đã sửa, ước lượng của tham số (ai, bi) có thể đạt được bằng cách giải phương trình Về lý thuyết, càng nhiều cặp điểm tương ứng được lấy,

ước tính của tham số (ai, bi) chính xác hơn có thể đạt được là Đặt trước m là điểm tương ứng nên có thể được biểu thị bằng vectơ dưới dạng:

Hình 2 6 Trước khi nắn chỉnh

Trang 23

Có nhiều phương pháp khử nhiễu ảnh phổ biến như sau:

- Lọc trung bình (Mean filtering): Dựa trên việc lấy trung bình cộng của các giá trị pixel lân cận, loại bỏ nhiễu bằng cách làm mượt ảnh

Trang 24

- Lọc Gaussian (Gaussian filtering): Sử dụng hàm Gaussian làm trọng số của các giá trị pixel lân cận Lọc Gaussian giúp giảm nhiễu mà giữ được chi tiết hình ảnh tốt hơn lọc trung bình

- Lọc trung vị (Median filtering): Thay giá trị pixel bằng giá trị trung vị của các pixel lân cận Kỹ thuật này giúp loại bỏ nhiễu mà không làm mất đặc trưng của cạnh và góc trong ảnh

- Lọc không gian trên biến đổi sóng (Wavelet-based filtering): Sử dụng biến đổi sóng để phân tích ảnh, lọc nhiễu trong miền biến đổi sóng và sau đó tái tạo lại ảnh

- Kỹ thuật loại bỏ nhiễu dựa trên học máy: Sử dụng các mô hình học sâu, ví dụ CNN (Convolutional Neural Network) để học cách loại bỏ nhiễu từ tập dữ liệu hình ảnh

Trong ngôn ngữ lập trình Python, thư viện OpenCV và Scikit-image rất phổ biến và hỗ trợ nhiều phương pháp khử nhiễu ảnh Bạn có thể tham khảo mã nguồn mẫu và tài liệu từ các nguồn trực tuyến để sử dụng các kỹ thuật này

Trang 25

tương phản của ảnh, cũng như cân bằng màu sắc, để mang lại kết quả tốt nhất cho ảnh

Công cụ chỉnh sửa ảnh như Adobe Photoshop, GIMP, hay các ứng dụng chỉnh sửa ảnh trực tuyến có thể giúp bạn thực hiện việc chỉnh mức xám một cách dễ dàng

và nhanh chóng Mục đích của việc chỉnh sửa mức xám là để cải thiện chất lượng ảnh, làm rõ chi tiết và đạt được hiệu ứng hài hòa về mặt màu sắc

Chỉnh mức xám (adjusting grayscale levels) trong xử lý ảnh là việc thay đổi

độ sáng và tương phản của ảnh xám để cải thiện chất lượng hình ảnh Việc này có thể giúp làm nổi bật các đặc trưng của ảnh và nâng cao kết quả của các thuật toán xử lý ảnh sau này

Curve Adjustment: Sử dụng các đường Curve để điều chỉnh các mức xám ở một số điểm cụ thể, giúp tăng cường sự quyết định của chúng

Levels Adjustment: Điều chỉnh các mức xám trên đồ thị Levels để tốt hơn và giúp đưa mức xám về cân bằng

Gradient Map: Tạo bản đồ Gradient để điều chỉnh các mức xám để thay đổi toàn bộ tông màu của ảnh

Local Adjustments: Sử dụng bàn chải chỉnh sửa (brush tool) hoặc bình chọn để chỉnh sửa các mức xám ở phần cụ thể của ảnh, giúp tăng độ nét và tương phản

2.1.6 Biên

Vấn đề biên trong xử lý ảnh là quá trình tìm và phân đoạn đường biên của các đối tượng trong ảnh Biên của đối tượng có thể là cạnh của vật thể hoặc phân cách giữa các đối tượng khác nhau Để giải quyết vấn đề biên trong xử lý ảnh, có thể sử dụng các thuật toán xử lý ảnh như Canny Edge Detection, Sobel Edge Detection hoặc

Trang 26

Morphological Edge Detection Các kỹ thuật này sẽ phân tích các điểm ảnh trong ảnh

để tìm ra đường biên, từ đó giúp tách biệt các đối tượng và tối ưu hóa việc phân loại

Một số phương pháp lọc mịn ảnh phổ biến bao gồm:

 Lọc trung bình: Áp dụng một bộ lọc trung bình để tính trung bình các giá trị pixel trong các vùng của ảnh, giúp làm giảm độ nhiễu

 Lọc Gaussian: Sử dụng bộ lọc Gaussian để giảm nhiễu và làm mịn ảnh bằng cách lấy trung bình các giá trị pixel xung quanh điểm đang xét, với trọng số phụ thuộc vào khoảng cách từ điểm đến các điểm khác

 Lọc trung vị: Sử dụng bộ lọc trung vị để loại bỏ các giá trị nhiễu bằng cách tính trung vị của các giá trị pixel trong các vùng ảnh

 Lọc laplacian: Áp dụng bộ lọc laplacian để làm nổi các cạnh và chi tiết trong ảnh bằng cách tăng độ tương phản giữa các điểm ảnh

Các phương pháp này có thể được sử dụng độc lập hoặc kết hợp với nhau để đạt được kết quả tốt nhất cho ảnh cụ thể

2.2.2 Nhị phân ảnh

Nhị phân ảnh, một khái niệm quan trọng trong thị giác máy tính, liên quan đến việc biểu diễn và xử lý hình ảnh được mã hóa dưới dạng nhị phân Trong hình ảnh

Trang 27

nhị phân, mỗi giá trị điểm ảnh (pixel) chỉ nhận hai giá trị phổ biến nhất là 0 (đen) và

1 (trắng) Điều này sản sinh nên hình ảnh chỉ có hai màu, tạo ra đồ thị tương phản cao, giúp giảm bớt thông tin không cần thiết và tập trung vào đặc điểm quan trọng của hình ảnh

Thị giác máy tính sử dụng nhị phân ảnh trong nhiều ứng dụng khác nhau, bao gồm nhận dạng, phân tích và so sánh các đối tượng trong hình ảnh Bằng cách áp dụng các thuật toán xử lý ảnh nhị phân, mục tiêu là tách bạch các đối tượng quan tâm khỏi nền của hình ảnh để thuận lợi cho việc phân tích sau này

Các bước chính trong quá trình nhị phân ảnh bao gồm chuyển đổi hình ảnh màu sang đơn sắc, áp dụng ngưỡng nhị phân để phân biệt điểm ảnh nền và điểm ảnh đối tượng, và cuối cùng là loại bỏ nhiễu để cải thiện chất lượng hình ảnh nhị phân Việc chọn ngưỡng đúng và áp dụng các phương pháp xử lý nhiễu là yếu tố then chốt

để đạt được kết quả hoàn hảo

Ảnh đầu vào nhận được ảnh thong qua các thiết bị thu nhận ảnh thường có thành phần phức tạp về màu sắc và kết cấu Vì thế để làm nổi bật các thành phần đặc trưng trong ảnh thì phải chuyển về ảnh nhị phân

Ảnh nhị phân chỉ sử dụng hai giá trị để biểu diễn giá trị của các điểm ảnh, bao gồm giá trị 0 (màu đen) và giá trị 255 (màu trắng) tương ứng với hai giá trị số 0 và 1

Do đó, một điểm ảnh trên ảnh nhị phân chỉ cần sử dụng 1 bit để biểu diễn Thông thường, ảnh nhị phân được tạo ra thông qua việc chuyển đổi từ ảnh màu hoặc ảnh xám sang ảnh nhị phân

Mã giả thuật toán:

Đầu vào: Ảnh số

Đầu ra: Ảnh đã được mã hóa nhị phân

Thuật toán:

Ta có cường độ sáng của một điểm ảnh là I(x, y)

INP(x, y) là cường độ sáng điểm ảnh Trong đó (Với 0 < x < image.Width và

0 < y < image.Height)

Trang 28

Để biến đổi sang ảnh nhị phân, thực hiện so sánh giá trị cường độ sáng với

một ngưỡng nhị phân T

If I(x,y) > T then INP(x, y) = 0 (0)

If I(x,y) > T then INP(x, y) = 255 (1)

để tạo ra ảnh nhị phân cơ bản sẽ phân tách khung nền và các đối tượng trong ảnh Tuy nhiên việc xác định ngưỡng T phù hợp luôn là một thách thức và có thể dẫn đến sai sót, đặc biệt là khi độ tương phản giữa các đối tượng và nền thấp hoặc khi độ chiếu sáng của ảnh không đồng đều Nếu ngưỡng T quá cao, ảnh sẽ chứa nhiễu và nếu ngưỡng T quá thấp thì các chi tiết của đối tượng có thể mất đi Có nhiều phương pháp khác nhau để xác định ngưỡng T, bao gồm cả việc xác định ngưỡng tổng quát cho toàn bộ ảnh hoặc ngưỡng cục bộ cho từng điểm ảnh

Trang 29

2.2.3 Lấy mẫu

Lấy mẫu ảnh trong thị giác máy tính là quá trình thu thập và tổng hợp dữ liệu

từ các nguồn ảnh khác nhau để tạo ra một bộ dữ liệu phong phú và đa dạng Mục đích chính của việc lấy mẫu ảnh là để huấn luyện và kiểm tra các mô hình thị giác máy tính trong việc phân loại, nhận dạng và phân tích đối tượng

Trong quá trình lấy mẫu ảnh, ta cần chú ý đến việc duy trì sự cân bằng giữa các lớp và đảm bảo chất lượng hình ảnh Điều này đòi hỏi việc lựa chọn các nguồn

dữ liệu phù hợp như tập dữ liệu công cộng, hình ảnh thu thập từ thiết bị ngoại vi, hoặc hình ảnh được tổng hợp bằng cách kết hợp các nguồn khác nhau

Công cụ và ngôn ngữ lập trình phổ biến như Python hỗ trợ rất nhiều các thư viện như OpenCV, TensorFlow và PyTorch, giúp người dùng dễ dàng xử lý hình ảnh

và huấn luyện các mô hình thị giác máy tính Các thư viện này cung cấp các hàm đọc,

xử lý và biến đổi hình ảnh nhằm tăng cường độ đa dạng và chất lượng của bộ dữ liệu Việc lấy mẫu ảnh chính xác và hiệu quả là tiền đề cơ bản để xây dựng và cải tiến các

mô hình xử lý ảnh, từ đó ứng dụng vào các lĩnh vực khác nhau như tự động hóa, giám sát an ninh, y tế và giải trí

Quá trình lấy mẫu này gồm 2 phần chính:

 Phần một: khoảng lấy mẫu

 Phần hai: cách thể hiện dạng mẫu

Khoảng lấy mẫu (Sampling Interval)

Khoảng lấy mẫu (Sampling Interval), còn gọi là khoảng chập mẫu, là khoảng thời gian giữa các lần lấy mẫu liên tiếp trong quá trình lấy mẫu tín hiệu số Trong ngữ cảnh xử lý ảnh và thị giác máy tính, khoảng lấy mẫu đề cập đến khoảng cách giữa các điểm ảnh (pixel) mà ta lấy dữ liệu từ một ảnh liên tục

Khoảng lấy mẫu đóng vai trò quan trọng trong việc xác định độ phân giải của

dữ liệu Khi khoảng lấy mẫu nhỏ hơn, ta sẽ thu được nhiều dữ liệu hơn và độ phân giải cao hơn; tuy nhiên, điều này đồng nghĩa với việc tốn thêm tài nguyên và thời gian để xử lý dữ liệu Ngược lại, nếu khoảng lấy mẫu lớn hơn, độ phân giải sẽ giảm,

Trang 30

đồng thời giảm bớt khối lượng dữ liệu và tài nguyên cần xử lý, nhưng điều này cũng

có thể dẫn đến việc mất mát thông tin quan trọng

Trong xử lý ảnh và thị giác máy tính, khoảng lấy mẫu cần được xác định một cách hợp lý sao cho đảm bảo đủ độ phân giải cần thiết cho mục đích sử dụng, đồng thời tối ưu hóa hiệu suất và tài nguyên hệ thống

Ảnh lấy mẫu có thể được diễn giải như việc chọn một bộ các điểm mẫu trong không gian hai chiều liên tục Ban đầu, chúng ta xem xét quá trình lấy mẫu một chiều bằng cách áp dụng hàm

Trong đó r là số nguyên, Δx: khoảng lấy mẫu

Như vậy, hàm răng lược là chuỗi các xung răng lược từ (-∞ đến +∞)

Giả sử hàm một chiều g(x) được mô tả (gần đúng) bằng g(rΔx) tức là:

Lưu ý 2: Dựa trên lý thuyết xử lý tín hiệu số [6], (2.2-2.6) là phép tích chập trong mi không gian x Bên cạnh đó, phương trình này cũng tương đương với phép tích chập trong miền tần số ω, nghĩa là biến đổi Fourier của gs(x)

Trang 31

Với ω x là giá trị tần số ứng với giá trị x trong miền không gian

Định lý lấy mẫu của Shannon [5]

Định lý lấy mẫu Nyquist-Shannon là một nguyên lý lý thuyết quan trọng trong thiết kế hệ thống tín hiệu kỹ thuật số và tín hiệu analog Theo định lý này [5], để tái tạo lại một tín hiệu một chiều từ các mẫu tín hiệu, tốc độ lấy mẫu phải bằng hoặc lớn hơn gấp đôi tần số cao nhất của tín hiệu (tần số Nyquist) Nếu không, sẽ xảy ra hiện tượng aliasing, dẫn đến tín hiệu không thể phục hồi hoặc bị sai lệch so với tín hiệu gốc

Định lý lấy mẫu Nyquist-Shannon cũng được áp dụng trong xử lý tín hiệu đa biến và hình ảnh, cung cấp nguyên tắc căn bản cho việc chuyển đổi giữa tín hiệu số

và tín hiệu liên tục trong nhiều ứng dụng kỹ thuật số và điện tử

Giả sử g(x) là một hàm có giới hạn dải tần (Band Limited Function) và biến đổi Fourier của hàm này là G(ωx) = 0 với các giá trị ωx > Wx Trong trường hợp này, g(x) có thể được phục hồi từ các mẫu được tạo ra ở các khoảng cách Δx đều đặn Nói cách khác:

Các loại lấy mẫu (Tesselation)

Có ba loại chính của Tesselation trong thị giác máy tính:

Trang 32

Regular Tesselation (Tesselation đều): Đây là loại Tesselation được thực hiện với các hình đa giác đều, được cắt thành các hình đa giác đều nhỏ hơn, hoặc các hình trái xoan nhưng vẫn đồng đều với cạnh của hình đa giác đều Ví dụ, Hình học Euclidean, với các hình đa giác tam giác, tứ giác, lục giác đều

Semi-regular Tesselation (Tesselation bán đều): Loại Tesselation này được tạo ra bằng cách sử dụng một số hình đa giác đều và các hình trái xoan khác, nhưng vẫn còn đồng đều Ví dụ, các loại Tesselation của hình vuông, tứ giác, lục giác đều

Irregular Tesselation (Tesselation không đều): Đây là loại Tesselation được tạo ra từ các hình đa giác không đều, và khác kích thước Tesselation này có điểm đặc biệt bởi tính không đối xứng và mẫu cũng không được lặp đi lặp lại trong cùng một thang phổ Ví dụ, Tesselation Penrose là một loại Tesselation không đều

Hình 2 11 Các dạng mẫu điểm ảnh

2.2.4 Lấy ngưỡng

Trong xử lý ảnh, ngưỡng (threshold) là một quá trình quan trọng giúp phân loại

và phân đoạn các đối tượng trong ảnh

Cơ chế ngưỡng hoạt động bằng cách so sánh giá trị màu (hoặc độ sáng) của từng điểm ảnh với giá trị ngưỡng được xác định trước đó Nếu giá trị màu lớn hơn hoặc bằng giá trị ngưỡng thì hình ảnh sẽ trở thành đen hoặc trắng (theo kiểu ảnh nhị phân) hoặc đen và trắng (theo kiểu ảnh xám)

Các phương pháp lấy ngưỡng thường được sử dụng trong xử lý ảnh bao gồm:

1 Ngưỡng toàn cục (global thresholding): áp dụng cho toàn bộ ảnh

2 Ngưỡng cục bộ (local thresholding): áp dụng cho từng phần của ảnh

3 Ngưỡng linh hoạt (adaptive thresholding): áp dụng ngưỡng khác nhau cho từng phần của ảnh, dựa trên sự thay đổi độ sáng trong khu vực đó

Trang 33

Các phương pháp lấy ngưỡng khác nhau được sử dụng tùy thuộc vào mục đích

xử lý ảnh cụ thể Các phương pháp này có thể được sử dụng để loại bỏ nhiễu, phân loại đối tượng, trích xuất thông tin, đặc trưng của ảnh,

Hình 2 12 Lấy ngưỡng

Có ba phương pháp chính để lấy ngưỡng trong xử lý ảnh:

Ngưỡng toàn cục (Global Thresholding): Trong phương pháp này, một ngưỡng duy nhất được sử dụng để phân tách đối tượng và phần nền của ảnh Giá trị ngưỡng được xác định bằng cách tìm ngưỡng nào đó mà khi áp dụng thì chiếu sáng tối nhất và đặt ngưỡng đó là giá trị ngưỡng

Ngưỡng cục bộ (Local Thresholding): Trong phương pháp này, một ngưỡng được áp dụng cho mỗi vùng nhỏ trong ảnh Vùng đó được chọn dựa trên kích thước cửa sổ và vị trí Khi áp dụng phương pháp ngưỡng cục bộ, ngưỡng được xác định cho mỗi vùng của ảnh Điều này giúp loại bỏ nhiễu hiệu quả hơn

Ngưỡng linh hoạt (Adaptive Thresholding): Trong phương pháp này, một ngưỡng được áp dụng cho từng vùng của ảnh dựa trên độ sáng của từng vùng Phương pháp này đặc biệt hữu ích khi ảnh có nhiều thay đổi về độ sáng

Mỗi phương pháp đều có ưu và nhược điểm của nó, và tùy thuộc vào ảnh và mục đích xử lý mà phương pháp nào được sử dụng để lấy ngưỡng cho phù hợp

Để thu được ngưỡng hiệu quả, rất nhiều phương pháp được áp dụng, trong đó thuật toán Otsu được ưu tiên nhất bởi tính chính xác và hiệu suất cao của nó Để xác định ngưỡng T Otsu của một hình ảnh, chúng ta thực hiện theo những bước sau:

Trang 34

Đầu vào:Ảnh xám

Đầu ra: T (Ngưỡng) nhị phân cho ảnh

B 1: Xác định Ngưỡng T1

B 2: Phân loại thành 2 nhóm điểm ảnh

Loại 1: chứa tất cả các điểm ảnh có giá trị cường độ sáng <= T

Loại 2 : chứa tất cả các điểm ảnh có giá trị cường độ sáng > T

B 3: Tính giá trị cường độ sáng trung bình cho loại 1 và loại 2

B 4: Tính giá trị T2 theo công thức (iAverage1 + iAverage2) /2

B 5: So sánh T1 và T2

Nếu giá trị chênh lệch của T1 và T2 <= Delta thì T2 chính là T cần tìm

Nếu giá trị chênh lệch của T1 và T2 > Delta thì quay lại B 1

Đầu vào: Ảnh (nhị phân) với góc nghiêng α

Đầu ra: Ảnh đã được chỉnh sửa độ nghiêng

Bước thứ 1 Xác định góc nghiêng α;

Bước thứ 2 Xoay ảnh với góc nghiêng α;

Khi đã xác định được góc nghiêng α của ảnh, ta sẽ tiến hành xoay ảnh với góc nghiêng α đã xác định tại một vị trí gốc (tâm xoay) Điểm tâm xoay thường được chọn là điểm chính giữa của ảnh (w/2, h/2) Các bước để xoay ảnh sẽ được thực hiện theo các động tác sau:

Trang 35

Duyệt tất cả các điểm ảnh g(x, y) trong ảnh I

1 Xác định vị trí mới g'(x', y') trong ảnh I'

x' = x0 + (x-x0).cos(α)- (y-y0).sin(α) y' = y0 + (x-x0).sin(α) + (y-y0).cos(α)

2 Chuyển giá trị điểm ảnh: g'(x', y') = g(x, y)

có thể được thực hiện bằng cách tạo ra một ma trận trọng số (hay kernel) kích thước

lẻ và áp dụng nó lên ảnh đầu vào

Để tính giá trị của một điểm ảnh mới, ta lấy giá trị trung bình của các điểm ảnh trong một cửa sổ kích thước nxn có tâm là điểm ảnh cần tính

Giá trị mới này sẽ được ghi vào tọa độ của điểm ảnh vừa tính

Ví dụ về ma trận trọng số kích thước 3x3 để áp dụng kỹ thuật lọc trung bình:

1/9 1/9 1/9 1/9 1/9 1/9 1/9 1/9 1/9

Trang 36

Trong ma trận trên, giá trị tại mỗi ô đều là 1/9, tức là giá trị trung bình của tất

cả các điểm ảnh trong cửa s kích thước 3x3 Khi áp dụng ma trận này lên ảnh đầu vào, ta sẽ có một ảnh mới với các điểm ảnh đã được làm mờ theo cách trung bình giá trị của các điểm ảnh trong cửa sổ

Tuy nhiên, việc sử dụng kỹ thuậtình cũng có một số hạn chế Trong trường hợp ảnh chứa các đường cạnh hoặc đối tượng sắc nét, việc làm mờ theo cách trung bình có thể làm mất đi các đặc trưng quan trọng của ảnh Do đó, thường cần sử dụng phương pháp lọc khác phù hợp hơn để xử lý các trường hợp đặc biệt này

Quá trình thực hiện thuật toán như sau:

Ta có ảnh đầu vào là I(x,y), T là ma trận mẫu cho sẵn

Bước 1: Tính I(x,y)  T

Bước 2: Tính 𝐼̅(𝑥,𝑦) =𝐼(𝑥,𝑦)T

𝑀 trong đó M là tổng giá trị trọng số của T

Bước 3: So sánh với ngưỡng  để tính lại I(x,y) như sau:

=> I (x,y)={𝐼(𝑥,𝑦) 𝑖𝑓|𝐼(𝑥,𝑦)− 𝐼̅(𝑥,𝑦)| ≤ 𝛳

𝐼̅(𝑥,𝑦) 𝑖𝑓|𝐼(𝑥,𝑦)− 𝐼̅(𝑥,𝑦)| > 𝛳

2.3.1.2 Kỹ thuật lọc trung vị

Kỹ thuật lọc trung vị là một phương pháp lọc phi tuyến tính trong xử lý ảnh số

và xử lý tín hiệu, thường được sử dụng để loại bỏ nhiễu trong ảnh hoặc tín hiệu Lọc trung vị là một bước tiền xử lý thông dụng nhằm cải thiện kết quả của các quá trình

xử lý sau đó, chẳng hạn như phát hiện cạnh trên ảnh Lọc trung vị được sử dụng rộng rãi trong xử lý ảnh số vì, trong điều kiện nhất định, nó giữ nguyên cạnh trong khi loại

bỏ nhiễu

Ý tưởng chính của bộ lọc trung vị là chạy qua từng mục của tín hiệu, thay thế mỗi mục bằng trung vị của các mục lân cận Khuôn mẫu của các mục lân cận được

Trang 37

gọi là "cửa sổ", trượt qua từng mục của tín hiệu Đối với tín hiệu một chiều, cửa sổ

rõ ràng nhất là một số mục đầu tiên liền trước và sau, trong khi đối với tín hiệu hai chiều (hoặc nhiều chiều hơn), cửa sổ phải bao gồm tất cả các mục trong phạm vi bán kính hoặc vùng elip (nghĩa là, bộ lọc trung vị không phải là một bộ lọc có thể tách ra)

Bộ lọc trung vị hữu ích trong việc giảm nhiễu ngẫu nhiên, đặc biệt là khi nhiễu

đó có thể gây ảnh hưởng đến kết quả của các kỹ thuật xử lý sau đó, chẳng hạn như phát hiện cạnh trong ảnh Để loại bỏ những nhiễu xung (impulse noise) trong ảnh, các bộ lọc trung vị thường được sử dụng

Thuật toán lọc trung vị:

Bước 1: với mỗi điểm ảnh I(x,y) ta lấy cửa sổ WW;

Bước 2: sắp xếp các giá trị điểm ảnh trong vòng cửa sổ theo một trật tự;

Bước 3: tính Itv theo công thức ở trên ;

Bước 4: hiệu chỉnh lại I(x,y);

[𝐼(𝑥,𝑦) = 𝐼(𝑥,𝑦) 𝑛ế𝑢 |𝐼(𝑥,𝑦) − 𝐼𝑡𝑣| ≤ 𝜃 ℎ𝑜ặ𝑐 𝐼(𝑥,𝑦) = 𝐼𝑡𝑣 𝑛ế𝑢 |𝐼(𝑥,𝑦)− 𝐼𝑡𝑣| > 𝜃]

Lọc trung vị là phi tuyến vì:

Trungvi(x(m)+y(m)) ≠ trungvi(x(m)) + trungvi(y(m))

2.3.2 Kỹ thuật phân ngưỡng

2.3.2.1 Kỹ thuật phân ngưỡng tự động

Kỹ thuật phân ngưỡng tự động là một phương pháp quan trọng trong xử lý ảnh

và thị giác máy tính, được sử dụng để phân tách các đối tượng hoặc vùng trong ảnh Mục đích của phân ngưỡng tự động là tìm ra một giá trị ngưỡng phù hợp để phân chia

Trang 38

các điểm ảnh trong ảnh thành hai hoặc nhiều lớp, dựa trên đặc điểm của các điểm ảnh

đó, như độ sáng hoặc màu sắc

Một trong những kỹ thuật phân ngưỡng tự động phổ biến và hiệu quả nhất là phương pháp Otsu Phương pháp Otsu, được đặt theo tên của Nobuyuki Otsu, tập trung vào việc phân tích biểu đồ độ sáng của ảnh, đặc biệt là đỉnh, thung lũng và độ cong của biểu đồ đã được làm mịn Phương pháp Otsu tính toán giá trị ngưỡng sao cho tổng độ biến thiên hoặc phương sai giữa hai lớp được giảm đến mức thấp nhất có thể

Kỹ thuật phân ngưỡng tự động khác cũng có thể dựa vào đặc điểm hình dạng của biểu đồ độ tương phản, hoặc kết hợp với các thuật toán phân vùng (clustering) và học máy để xác định giá trị ngưỡng tốt nhất

Phương pháp phân ngưỡng tự động rất hữu ích trong các ứng dụng như phân tích hình ảnh y khoa, nhận dạng vật thể, xử lý ảnh và nhiều ứng dụng khác nơi cần đến việc phân tách các vùng và đối tượng trong ảnh một cách tự động và chính xác

2.3.2.2 Phương pháp sử dụng các điểm biên

Phương pháp phân ngưỡng bằng sử dụng các điểm biênột kỹ thuậtử lý ảnh đặc biệt, dựa vào việc xác định các biên giữa các vùng khác nhau trong ảnh Phương pháp này thích hợp cho việc phân tích ảnh trắng đen có các đối tượng chủ yếu được phân tách rạch ròi về đường biên Phân ngưỡng bằng sử dụng các điểm biên thường tìm kiếm sự thiếu liên tục của các điểm ảnh trong không gian ảnh, để xác định các vùng cần phân tách

Một ví dụ về phương pháp phân ngưỡng sử dụng các điểm biên là kỹ thuật dựa trên Morphological Hessian Đây là một kỹ thuật được sử dụng để phân tích các ảnh chụp mạch máu võng mạc trong y học Phương pháp này kết hợp cả thuật toán phân ngưỡng Otsu và phép biến đổi Hessian để phân tích đường biên của các mạch máu

và ảnh được loại nhiễu trước khi tiếp tục xử lý

Trang 39

Các phương pháp địa chỉ quy trình phân ngưỡng bằng cách sử dụng các điểm biên có ưu điểm là xử lý đơn giản, thích hợp cho ảnh có tính rạch ròi giữa các vùng

rõ ràng Các phương pháp này thích hợp cho việc xử lý ảnh không cổ hũ trong y học, điện tử viễn thông và trong ngành xử lý ảnh [2] Tuy nhiên, các phương pháp này không phải lúc nào cũng phù hợp cho những trường hợp ảnh có mức độ phức tạp, đặc biệt khi không gian ảnh không được liên tục có tính rạch ròi giữa các vùng

2.4 Các phương pháp nhận dạng chữ số viết tay

Hiện nay có nhiều phương pháp trong các hệ thống nhận dạng chữ số viết tay như là: đối sánh mẫu, thống kê, cấu trúc, mạng Nơ-ron, SVM…

2.4.1 Phương pháp đối sánh mẫu

Phương pháp đối sánh mẫu (template matching) trong nhận diện chữ viết tay

là một kỹ thuật dựa trên việc so sánh các hình mẫu của chữ cái và chữ số từ một thư viện mẫu với các đoạn chữ viết tay được cung cấp Mục tiêu của phương pháp này là xác định chữ cái hoặc chữ số nào mà đoạn chữ viết tay đó giống nhất [7]

Một trong những ứng dụng phổ biến của phương pháp đối sánh mẫu trong nhận dạng chữ viết tay là nhận diện ký tự trên thẻ căn cước (ID card) [7] Chất lượng của kết quả phụ thuộc vào độ chính xác của các mẫu được dùng để so sánh, độ chính xác trong việc xếp loại chữ viết tay và phép biến đổi của phương pháp đối sánh mẫu để thích ứng cho nhiều phong cách viết khác nhau

Một số mô hình nhận dạng chữ viết tay kết hợp cả đối sánh mẫu và phân tích đặc trưng (feature-analysis) để phân loại các ký tự dựa trên sự kết hợp của đặc trưng

và hình mẫu được cung cấp [11] Việc học các đặc trưng phân biệt cho nhận dạng ảnh

là khó khăn trong trường hợp dữ liệu ít sẵn có [15] Tuy nhiên, khi có một thư viện mẫu lớn hơn, phương pháp đối sánh mẫu có thể cung cấp kết quả chính xác hơn trong việc nhận dạng chữ viết tay

2.4.2 Phương pháp tiếp cận cấu trúc

Phương pháp tiếp cận cấu trúc trong nhận dạng chữ viết tay thường liên quan đến việc sử dụng các thuật toán và kỹ thuật phân tích hình thức để xác định đặc điểm chữ viết tay Một số phương pháp tiếp cận cấu trúc gồm:

Trang 40

Nhận dạng chữ viết tay ngoại tuyến (offline handwriting character recognition):

Các nghiên cứu đã đề xuất các phương pháp thay thế trong cách tiếp cận cấu trúc để chia nhỏ chữ viết tay (Character segmentation) và nhận dạng chúng

Hệ thống nhận dạng ký tự Tifinagh chữ viết tay dựa trên đồ thị (graph-based):

Bao gồm ba phần chính, gồm phân đoạn đường nét chữ viết tay, trích xuất đặc trưng đường nét và lớp phân tích

Nhận dạng số viết tay tiếng Ấn Độ (on-line handwritten Indian numbers):

Phương pháp tiếp cận theo mẫu cấu trúc được đề xuất, phụ thuộc vào việc phân đoạn và trích xuất đặc điểm từ các chữ số viết tay

Phương pháp tiếp cận cấu trúc giúp cải thiện hiệu suất nhận dạng chữ viết tay bằng cách xác định và phân loại các đặc điểm chính của hình dạng chữ viết

2.4.3 Phương pháp học máy với SVM (Support Vector Machine)

2.4.3.1 Giới thiệu SVM

Support Vector Machine (SVM) là một thuật toán học có giám sát mạnh mẽ

và được sử dụng rộng rãi cho các tác vụ phân loại và hồi quy trong học máy Mục tiêu chính của SVM là tìm ra một siêu phẳng tối ưu để phân tách tốt nhất các điểm

dữ liệu thuộc các lớp khác nhau với lề tối đa, do đó đảm bảo phân loại chính xác

2.4.3.2 Định nghĩa

SVM là một phương pháp dựa trên cơ sở lý thuyết thống kê, do đó có một nền tảng toán học mạnh mẽ để đảm bảo tính chính xác của kết quả tìm được Đây là một thuật toán học có giám sát được áp dụng cho việc phân loại dữ liệu Đây cũng là một

kỹ thuật thử nghiệm, cung cấp một trong những phương pháp mạnh mẽ và chính xác nhất giữa các thuật toán phân loại dữ liệu nổi tiếng SVM có tính tổng quát cao, cho phép nó được sử dụng cho nhiều loại bài toán nhận dạng và phân loại khác nhau

2.4.3.3 Ý tưởng của phương pháp

Ý tưởng chính đằng sau SVM là chuyển đổi dữ liệu đầu vào thành không gian

có chiều cao hơn bằng cách sử dụng hàm nhân, giúp dễ dàng tìm thấy một siêu phẳng

Ngày đăng: 19/02/2024, 14:52

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN