(Luận văn thạc sĩ) Nghiên cứu mạng nơron CNN và ứng dụng trong bài toán phân – Tài liệu text – EU-Vietnam Business Network (EVBN)
(Luận văn thạc sĩ) Nghiên cứu mạng nơron CNN và ứng dụng trong bài toán phân loại ảnh
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.01 MB, 84 trang )
I HC THI NGUYấN
TRƯờNG ĐạI HọC CÔNG NGHệ THÔNG TIN Và TRUYềN THÔNG
Lấ CM H
NGHIấN CU MNG NRON CNN V ỨNG DỤNG
TRONG BÀI TOÁN PHÂN LOẠI ẢNH
LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH
THÁI NGUYÊN – 2020
I HC THI NGUYấN
TRƯờNG ĐạI HọC CÔNG NGHệ THÔNG TIN Và TRUYềN THÔNG
Lấ CM H
NGHIấN CU MNG NRON CNN V ỨNG DỤNG
TRONG BÀI TOÁN PHÂN LOẠI ẢNH
Chuyên ngành: Khoa học máy tính
Mã số: 8 48 01 01
LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH
Giáo viên hướng dẫn: TS.Nguyễn Đình Dũng
THÁI NGUYÊN – 2020
i
LỜI CẢM ƠN
Luận văn này được hoàn thành tại Trường Đại học Công nghệ Thông tin và
Truyền thông dưới sự hướng dẫn của TS. Nguyễn Đình Dũng. Tác giả xin bày
tỏ lịng biết ơn tới các thầy cơ giáo thuộc Trường Đại học Công nghệ Thông tin
và Truyền thông, các thầy cô giáo thuộc Viện Công nghệ Thông tin – Viện Hàn
lâm Khoa học và Công nghệ Việt Nam đã tạo điều kiện, giúp đỡ tác giả trong
quá trình học tập và làm luận văn tại Trường, đặc biệt tác giả xin bày tỏ lịng biết
ơn tới TS. Nguyễn Đình Dũng đã tận tình hướng dẫn và cung cấp nhiều tài liệu
cần thiết để tác giả có thể hồn thành luận văn đúng thời hạn.
Xin chân thành cảm ơn anh chị em học viên cao học và bạn bè đồng nghiệp
đã trao đổi, khích lệ tác giả trong q trình học tập và làm luận văn tại Trường Đại
học Công nghệ Thông tin và Truyền thông – Đại học Thái Nguyên.
Cuối cùng tác giả xin gửi lời cảm ơn đến gia đình, những người đã ln
bên cạnh, động viên và khuyến khích tơi trong q trình thực hiện đề tài.
Thái Nguyên, tháng 10 năm 2020
Học viên cao học
Lê Cẩm Hà
ii
LỜI CAM ĐOAN
Tôi xin cam đoan luận văn này do chính tơi thực hiện, dưới sự hướng
dẫn khoa học của TS. Nguyễn Đình Dũng, các kết quả lý thuyết được trình
bày trong luận văn là sự tổng hợp từ các kết quả đã được cơng bố và có trích
dẫn đầy đủ, kết quả của chương trình thực nghiệm trong luận văn này được
tác giả thực hiện là hoàn toàn trung thực, nếu sai tơi hồn tồn chịu trách
nhiệm.
Thái Ngun, tháng 10 năm 2020
Học viên
Lê Cẩm Hà
iii
MỤC LỤC
Một số thuật toán tiêu biểu trong phân loại ảnh …………………………………….. 19
1.5.1 Thuật toán KNN ………………………………………………………………………………. 19
1.5.2 Thuật toán sử dụng mạng Nơ ron ……………………………………………………….. 20
1.5.3 Thuật toán SVM ………………………………………………………………………………. 21
Kết luận chương 1 …………………………………………………………………………….. 21
CHƯƠNG 2
MẠNG NƠ RON CNN VÀ ỨNG DỤNG TRONG PHÂN LOẠI
ẢNH
………………………………………………………………………………………….. 23
iv
Các khái niệm chung về mạng nơron …………………………………………………… 23
2.1.1 Mạng nơron sinh học ………………………………………………………………………… 23
2.1.2 Mạng nơron nhân tạo ………………………………………………………………………… 24
2.1.3 Mơ hình tốn học và kiến trúc mạng nơron………………………………………….. 27
2.1.4 Phân loại mạng nơ ron ………………………………………………………………………. 30
2.1.5 Huấn luyện mạng nơron ……………………………………………………………………. 31
Mạng nơron CNN ……………………………………………………………………………… 32
2.2.1 Giới thiệu ………………………………………………………………………………………… 32
2.2.2 Kiến trúc mạng CNN ………………………………………………………………………… 33
2.2.3 Ứng dụng CNN trong phân loại ảnh ……………………………………………………. 37
Xây dựng mạng CNN cho phân loại ảnh ……………………………………………… 38
2.3.1 Trường tiếp nhận cục bộ (Local receptive fields) …………………………………. 38
2.3.2 Trọng số chia sẻ và độ lệch (Shared weights and biases)……………………….. 42
2.3.3 Lớp chứa hay lớp tổng hợp (Pooling layer) …………………………………………. 42
2.3.4 Cách chọn tham số cho CNN …………………………………………………………….. 45
Cập nhật một số hướng nghiên cứu về bài toán phân loại ảnh sử dụng mạng
nơ ron CNN ……………………………………………………………………………………………….. 45
2.4.1 Các nghiên cứu trên thế giới ………………………………………………………………. 45
2.4.2 Các nghiên cứu trên trong nước …………………………………………………………. 46
Kết luận chương ……………………………………………………………………………….. 48
CHƯƠNG 3
XÂY DỰNG CHƯƠNG TRÌNH MƠ PHỎNG ỨNG DỤNG MẠNG
CNN TRONG PHÂN LOẠI ẢNH ……………………………………………………………….. 49
Đặt vấn đề………………………………………………………………………………………… 49
Bài toán nhận dạng chữ viết tay ………………………………………………………….. 50
3.2.1 Mơ tả bài tốn ………………………………………………………………………………….. 50
3.2.2 Các bước thực hiện …………………………………………………………………………… 51
3.2.3 Một số kết quả đạt được ……………………………………………………………………. 57
Bài tốn giải mã Capcha…………………………………………………………………….. 61
3.3.1 Mơ tả bài tốn ………………………………………………………………………………….. 61
3.3.2 Các bước thực hiện …………………………………………………………………………… 65
v
3.3.3 Một số kết quả đạt được ……………………………………………………………………. 67
Kết luận chương ……………………………………………………………………………….. 68
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN ……………………………………………………… 70
TÀI LIỆU THAM KHẢO ……………………………………………………………………………. 72
vi
DANH MỤC CÁC TỪ VIẾT TẮT
Từ hoặc
Từ tiếng Anh
cụm từ
Từ tiếng Việt
AI
Artificial Intelligence
Trí tuệ nhân tạo
ANN
Artificial Neural Network
Mạng nơron nhân tạo
CV
Computer Vision
Thị giác máy tính
CNN
Convolutional Neural Network
Mạng nơron tích chập
DL
Deep Learning
Học sâu
Completely Automated Public Phép thử Turing cơng cộng hồn
CAPCHA Turing test to tell Computers and toàn tự động để phân biệt máy tính
Humans Apart
với người
MCR
Miss Classification Rate
Tỷ lệ nhận dạng sai
RMSE
Root Mean Square Error
Sai số bình phương trung bình
MLP
Multilayer Neural Network
Mạng nơron nhiều lớp
Modified National Institute of
MNIST
Standards
and
Technology Cơ sở dữ liệu về chữ số viết tay
database
ReLU
Rectified Linear Units
Hàm tinh chỉnh các đơn vị tuyến tính
vii
DANH MỤC CÁC HÌNH ẢNH
Hình 1.1. Các giai đoạn chính trong xử lý ảnh …………………………………………………..5
Hình 1.2. Minh họa hệ màu RGB …………………………………………………………………….8
Hình 1.3. Ví dụ về ảnh màu …………………………………………………………………………….8
Hình 1.4. Biểu diễn ảnh theo tensor 3 chiều ………………………………………………………9
Hình 1.5. Ví dụ về ảnh xám …………………………………………………………………………..10
Hình 1.6. Minh họa phép tích chập trong xử lý ảnh ………………………………………….11
Hình 1.7. Ma trận đầu ra Y khi chập ảnh X với kernel W ………………………………….11
Hình 1.8. Stride=1, padding=1 ……………………………………………………………………….12
Hình 1.9. Stride=2, padding=1 ……………………………………………………………………….12
Hình 1.10. Một số bộ lọc Kerne1 trong xử lý ảnh …………………………………………….13
Hình 1.11. Phương pháp lưới …………………………………………………………………………16
Hình 1.12. Phương pháp cung ………………………………………………………………………..16
Hình 1.13. Biểu diễn mẫu bằng tập kí hiệu ………………………………………………………18
Hình 1.14. Minh họa thuật tốn KNN ……………………………………………………………..19
Hình 2.1. Cấu trúc cơ bản của nơron sinh học ………………………………………………….23
Hình 2.2. Nơron nhân tạo ………………………………………………………………………………25
Hình 2.3. Mơ hình tốn học mạng nơron nhân tạo ……………………………………………27
Hình 2.4. Nơron 1 đầu vào với hàm hoạt hoá là hàm hardlimit ………………………….29
Hình 2.5. Phân loại mạng nơ ron ……………………………………………………………………30
Hình 2.6. Học có giám sát ……………………………………………………………………………..31
Hình 2.7. Học khơng có giám sát ……………………………………………………………………31
Hình 2.8. Học tăng cường ……………………………………………………………………………..32
Hình 2.9. Cách máy tính “nhìn” một hình [16] …………………………………………………32
Hình 2.10. Mạng nơ-ron thơng thường (trái) và CNN (phải) ……………………………..34
Hình 2.11. Kiến trúc mạng CNN ……………………………………………………………………34
Hình 2.12. Max pooling kích thước 2×2 ………………………………………………………….36
Hình 2.13. Lớp kết nối đầy đủ ……………………………………………………………………….36
Hình 2.14. Các bước phân loại ảnh sử dụng mạng CNN ……………………………………37
viii
Hình 2.16. Lớp input gồm 28×28 nơ ron cho nhận dạng chữ từ tập dữ liệu MNIST
…………………………………………………………………………………………………………………..38
Hình 2.17. Kết nối vùng 5×5 nơ ron input với nơ ron lớp ẩn ……………………………..39
Hình 2.18. Vị trí bắt đầu của trường tiếp nhận cục bộ ……………………………………….39
Hình 2.19. Vị trí thứ 2 của trường tiếp nhận cục bộ và nơ ron lớp ẩn ………………….40
Hình 2.20. Trường tiếp nhận cục bộ với ba bản đồ đặc trưng …………………………….40
Hình 2.21. Trường tiếp nhận cục bộ với 20 bản đồ đặc trưng …………………………….41
Hình 2.22. Ví dụ về Max pooling 2×2 …………………………………………………………….43
Hình 2.23. Max pooling với ba bản đồ đặc trưng ……………………………………………..43
Hình 2.24. Một kiến trúc mạng CNN cho nhận dạng chữ viết từ dữ liệu MNIST …44
Hình 3.1. Giao diện chính của chương trình mơ phỏng ……………………………………..49
Hình 3.2. Chữ viết tay số “5” từ bộ dữ liệu MNIST ………………………………………….50
Hình 3.3. Giao diện thiết kế mạng CNN ………………………………………………………….55
Hình 3.4. Mạng CNN cơ bản …………………………………………………………………………55
Hình 3.5. Tiến trình luyện mạng với kernel 7 x 7 and 8 bản đồ đặc trưng. …………..56
Hình 3.6. Giao diện chương trình nhận dạng chữ viết tay. …………………………………60
Hình 3.7. Một số mẫu captcha ……………………………………………………………………….62
Hình 3.8. Một số kết quả tấn cơng captcha ………………………………………………………63
Hình 3.9. Hai cách tiếp cận để nhận dạng captcha bằng CNN ……………………………64
Hình 3.10. Kiểu dữ liệu captcha dùng trong bài tốn nhận dạng …………………………65
Hình 3.11. Kí tự W và Q bị dính với nhau ……………………………………………………….65
Hình 3.12. Giãn nở ký tự trong captcha để dễ phát hiện vùng liên thơng …………….66
Hình 3.13. Phát hiện thành phần liên thơng ……………………………………………………..66
Hình 3.14. Một mẫu captcha có 2 ký tự dính liền nhau ……………………………………..66
Hình 3.15. Vùng nhận dạng liên tục nhận 2 ký tự vào 1 ảnh cắt, chưa tốt ……………66
Hình 3.16. Kết quả sau khi dùng thủ thuật cắt đôi vùng nhận các ký tự liền nhau ..66
Hình 3.17. Ví dụ tập các ảnh kí tự đã được cắt và xếp theo thư mục …………………..67
Hình 3.18. Chương trình mơ phỏng nhận dạng mã Captcha ………………………………68
ix
DANH MỤC BẢNG BIỂU
Bảng 2.1. Một số dạng hàm hoạt hóa trong mạng nơron nhân tạo ………………………29
Bảng 3.1. Các tham số hoạt động của mạng CNN cơ bản ………………………………….57
Bảng 3.2. Các tham số hoạt động của mạng CNN ba lớp ẩn ………………………………58
Bảng 3.3. So sánh kết quả của một số phương pháp trên bộ dữ liệu MNIST ………..61
1
MỞ ĐẦU
1. Tính khoa học và cấp thiết của đề tài
Ứng dụng của công nghệ phân loại hiện nay đang phát triển rất mạnh ở rất
nhiều lĩnh vực như: học thuật, kinh doanh, bảo mật, y tế… và các ở các đối tượng như:
nhà nghiên cứu xã hội, chính phủ và các tổ chức phi lợi nhuận khác. Vì các tổ chức
này sở hữu một lượng lớn dữ liệu không có cấu trúc và việc xử lý dữ liệu sẽ trở nên
dễ dàng hơn rất nhiều nếu như các dữ liệu này được chuẩn hóa bởi các chủ đề/nhãn.
Nền tảng cơng nghệ để thực hiện bài tốn phân loại chính là trí tuệ nhân tạo (Artificial
Intelligence – AI) và học sâu (Deep Learning – DL).
Trong ngành Thị giác máy tính (Computer Vision – CV), nhờ những thành tự
của lĩnh vực học sau mà trong những năm gần đây, ta đã chứng kiến được nhiều thành
tựu vượt bậc. Các hệ thống xử lý ảnh lớn như Facebook, Google hay Amazon đã đưa
vào sản phẩm của mình những chức năng thơng minh như nhận diện khuôn mặt người
dùng, phát triển xe hơi tự lái hay drone giao hàng tự động.
Từ lâu các nhà khoa học đã nhận thấy những ưu điểm của bộ óc con người và
tìm cách bắt chước để thực hiện trên những máy tính, tạo cho nó có khả năng học tập,
nhận dạng và phân loại. Vì vậy các nhà khoa học đã nghiên cứu và sáng tạo ra mạng
nơron nhân tạo. Nó thực sự được chú ý và nhanh chóng trở thành một hướng nghiên
cứu mới triển vọng đặc biệt là lĩnh vực nhận dạng, dự đoán và phân loại.
Convolutional Neural Network (Mạng nơ-ron tích chập – CNN) là một trong
những mơ hình Deep Learning tiên tiến giúp cho chúng ta xây dựng được những hệ
thống thông minh với độ chính xác cao như hiện nay. Việc nghiên cứu về mạng nơron
cũng như mạng CNN (tích chập) và sử dụng mơ hình CNNs trong phân lớp ảnh
(Image Classification) là một bài tốn dầy hấp dẫn và có khả năng áp dụng để giải
quyết nhiều vấn đề trong thực tế.
Được sự gợi ý của thầy giáo hướng dẫn tôi đã chọn đề tài: “Nghiên cứu mạng
nơron CNN và ứng dụng trong bài toán phân loại ảnh” làm luận văn tốt nghiệp của
mình. Mục tiêu chính của luận văn là tìm hiểu về bài tốn phân loại hình ảnh trong
CV và cách thực hiện bằng mạng CNN cho hai ứng dụng (bài toán nhận dạng chữ
viết tay và bài toán giải mã Capcha).
2
2. Đối tượng và phạm vi nghiên cứu của đề tài
– Đối tượng nghiên cứu: Luận văn nghiên cứu kỹ thuật phân loại ảnh sử dụng
mạng CNN
– Phạm vi nghiên cứu: Luận văn tập trung nghiên cứu trên hai bài toán (bài toán
nhận dạng chữ viết tay và bài toán giải mã Capcha) dựa trên các bộ dữ liệu ảnh
có sẵn được cộng đồng khoa học quốc tế công nhận.
3. Phương pháp luận nghiên cứu
Xem thêm: 10 bài tập tăng vòng 3 cho nữ giúp mông cong vút cực kỳ quyến rũ
– Phương pháp nghiên cứu lý thuyết: Tổng hợp, nghiên cứu các tài liệu về bài
toán phân loại ảnh, mạng nơ ron CNN; Tìm hiểu các kiến thức liên quan. Ứng dụng
mạng nơ ron CNN bài toán nhận dạng chữ viết tay và bài toán giải mã Capcha.
– Phương pháp nghiên cứu thực nghiệm: Sau khi nghiên cứu lý thuyết, luận
văn sẽ tập trung vào xây dựng phần mềm mô phỏng việc phân loại dữ liệu ảnh trong
hai bài toán nêu trên; Đánh giá kết quả sau khi thử nghiệm
– Phương pháp trao đổi khoa học: Thảo luận, xemina, lấy ý kiến chuyên gia.
4. Nội dung và bố cục của luận văn
Ngoài phần mở đầu, kết luận và hướng phát triển, luận văn được bố cục thành
ba chương chính như sau:
Chương 1 Tổng quan bài tốn phân loại ảnh số: Nghiên cứu các khái niệm cơ
bản trong xử lý ảnh số, tập trung sâu vào phân loại ảnh số, một số thuật toán tiêu biểu
được sử dụng trong phân loại ảnh số.
Chương 2 Mạng nơ ron CNN và ứng dụng trong phân loại ảnh: Nghiên cứu về
mạng nơron nhân tạo, tập trung vào mạng nơron CNN và các ứng dụng của mạng này
trong thực tế, đặc biệt trong phân lớp dữ liệu ảnh
Chương 3 Xây dựng chương trình mơ phỏng ứng dụng mạng CNN trong phân
loại ảnh: Chương này giới thiệu về hai bài toán nhận dạng chữ viết tay và giải mã
Capcha. Xây dựng các mơ hình mạng nơ ron CNN để giải quyết hai bài tốn này dựa
trên tập mẫu dữ liệu ảnh có sẵn được cộng đồng khoa học quốc tế công nhận. Đánh
giá hiệu năng của mơ hình mạng CNN thu được với một số phương pháp cơng bố
trước đó.
3
CHƯƠNG 1
TỔNG QUAN BÀI TOÁN PHÂN LOẠI ẢNH SỐ
Tổng quan xử lý ảnh số
1.1.1 Một số khái niệm cơ bản trong xử lý ảnh
Ảnh số
Ảnh số thực tế là biểu diễn số học của hình ảnh trong máy tính, thường là biểu
diễn nhị phân. Có thể phân ảnh số thành 2 loại: ảnh xám và ảnh màu.
Ảnh xám thực chất là một hàm hai chiều của cường độ sáng f(x,y), trong đó x
và y là các toạ độ khơng gian và giá trị của hàm f tại một điểm (x,y) tỷ lệ với cường
độ sáng của ảnh tại điểm đó. Nếu chúng ta có một ảnh mầu thì f là một vector mà mỗi
thành phần của vector đó chỉ ra cường độ sáng của ảnh tại điểm (x,y) đó tương ứng
với dải mầu [2] .
Mỗi thành phần của mảng (x,y) được gọi là một điểm ảnh (pixel: picture
element) và là phần tử nhỏ nhất cấu tạo nên ảnh. Điểm ảnh được hiểu như 1 dấu hiệu
hay cường độ sáng tại một tọa độ xác định trong khơng gian. Hình ảnh được xem như
là 1 tập hợp các điểm. Với cùng kích thước nếu sử dụng càng nhiều điểm ảnh thì bức
ảnh càng đẹp, càng mịn và càng thể hiện rõ hơn chi tiết của ảnh người ta gọi đặc điểm
này là độ phân giải.
Cường độ sáng của một ảnh tại một ví trí điểm ảnh
Mỗi điểm ảnh của một ảnh tương ứng với một phần của một đối tượng vật lý
tồn tại trong thế giới thực. Đối tượng vật lý này được chiếu sáng bởi một vài tia sáng
mà tia sáng này bị phản xạ một phần hay hấp thụ một phần khi chiếu lên đối tượng
vật lý đó. Phần ánh sáng phản xạ lại đi tới các bộ cảm biến được sử dụng để tạo ảnh
cảm nhận và tạo ra các giá trị ghi nhận được đối tượng đối với từng điểm ảnh. Giá trị
thu nhận được phụ thuộc vào phổ ánh sáng phản xạ. Giá trị cường độ sáng của các
điểm ảnh khác nhau chỉ có ý nghĩa tương đối mà khơng có ý nghĩa trong các tốn
hạng tuyệt đối [2] .
4
Số bits cần thiết để lưu trữ một ảnh
Ở đây chúng ta chỉ quan tâm tới ảnh xám, nếu ảnh được lưu trữ dưới dạng một
mảng hai chiều với kích thước NxN và có 2m mức xám thì số bits cần thiết để lưu trữ
ảnh là:
b N x N x 2m
(1.1)
Ví dụ như, một ảnh cỡ 512 x 512 với 256 (tức m=8) mức xám thì cần số bits
lưu trữ là: 512 x 512 x 256=2.097.152 bits.
Độ phân giải ảnh
Độ phân giải ảnh biểu diễn mức độ chi tiết của ảnh mà chúng ta có thể nhìn rõ
đối tượng. Khi thay đổi các giá trị m và N trong phương trình thì sẽ có các hiện tượng
thay đổi khác nhau. Xong thực nghiệm cho thấy khi giữ nguyên kích thước ảnh N và
tăng số mức xám m lên thì sẽ thể hiện rõ hơn mức độ chi tiết trong ảnh.
1.1.2 Tổng quan về một hệ thống xử lý ảnh
Xử lý ảnh là đối tượng nghiên cứu của lĩnh vực thị giác máy, là quá trình biến
đổi từ một ảnh ban đầu sang một ảnh mới với các đặc tính và tuân theo ý muốn của
người sử dụng. Xử lý ảnh có thể gồm q trình phân tích, phân lớp các đối tượng,
làm tăng chất lượng, phân đoạn và tách cạnh, gán nhãn cho vùng hay quá trình biên
dịch các thơng tin hình ảnh của ảnh [2] .
Cũng như xử lý dữ liệu bằng đồ hoạ, xử lý ảnh số là một lĩnh vực của tin học
ứng dụng. Xử lý dữ liệu bằng đồ hoạ đề cập đến những ảnh nhân tạo, các ảnh này
được xem xét như là một cấu trúc dữ liệu và được tạo ra bởi các chương trình. Xử lý
ảnh số bao gồm các phương pháp và kĩ thuật để biến đổi, để truyền tải hoặc mã hố
các ảnh tự nhiên. Mục đích của xử lý ảnh gồm:
–
Biến đổi ảnh, làm tăng chất lượng ảnh.
–
Tự động nhận dạng, đoán nhận, đánh giá các nội dung của ảnh.
Các bước cần thiết trong xử lý ảnh được mô tả chi tiết trong Hình 1.1 bao gồm
các bước sau:
5
CAMERA
Lưu trữ
Thu nhận
ảnh
Số hóa
Phân tích
ảnh
Phân loại
ảnh
SCANNER
Lưu trữ
Hệ Q.định
Hình 1.1. Các giai đoạn chính trong xử lý ảnh
Đầu tiên là quá trình thu nhận ảnh. Ảnh có thể thu nhận được qua camera.
Thường khi thu nhận ảnh qua camera là tín hiệu tương tự (loại camera ống kiểu
CCIR), nhưng cũng có thể là tín hiệu số hóa (loại CCD- Charge Coupled Device).
Ảnh cũng có thể thu nhận từ vệ tinh qua các bộ cảm ứng (sensor), hay ảnh tranh được
quét trên scanner. Tiếp theo là q trình số hóa (Digitalizer) để biến đổi tín hiệu tương
tự sang tín hiệu rời rạc (lấy mẫu) và số hóa bằng lượng hóa, trước khi chuyển sang
giai đoạn xử lý, phân tích hay lưu trữ lại. Trước hết là công việc tăng cường ảnh để
nâng cao chất lượng ảnh. Do những nguyên nhân khác nhau: có thể do chất lượng
thiết bị thu nhận ảnh, do nguồn sáng hay do nhiễu, ảnh có thể bị suy biến do vậy cần
phải tăng cường và khôi phục lại ảnh để làm nổi bật một số đặc tính chính của ảnh,
hay làm cho ảnh gần giống nhất với trạng thái gốc – trạng thái trước khi bị biến dạng.
Giai đoạn tiếp theo là phát hiện các đặc tính như biên, phân vùng ảnh, trích chọn các
đặc tính…v.v…
Cuối cùng tùy theo mục đích của ứng dụng, sẽ là giai đoạn nhận dạng, phân
loại hay các quyết định khác.
1.1.3 Một số thao tác cơ bản trong xử lý ảnh
Biểu diễn ảnh
Trong biểu diễn ảnh, người ta thường dùng các phần tử đặc trưng của ảnh là
pixel. Nhìn chung có thể một hàm hai biến chứa các thông tin như biểu diễn của một
6
ảnh. Các mơ hình biểu diễn cho ta một mơ tả logic hay định lượng các tính chất của
hàm này. Trong biểu diễn ảnh cần chú ý đến tính trung thực hoặc các tiêu chuẩn
“thông minh” để đo chất lượng ảnh hoặc tính hiệu quả của các kĩ thuật xử lý.
Một số mơ hình thường được dùng trong biểu diễn ảnh: mơ hình bài tốn, mơ
hình thống kê. Trong mơ hình bài tốn, ảnh hai chiều được biểu diễn nhờ các hàm hai
biến trực giao gọi là các hàm cơ sở. Cịn mơ hình thống kê, một ảnh được coi như
một phần tử của một tập hợp đặc trưng bởi các đại lượng như: kỳ vọng toán học, hiệp
biến, phương sai, moment.
Biến đổi ảnh (Image Transform)
Thuật ngữ biến đổi ảnh thường dùng để nói tới một lớp các ma trận đơn vị và
các kĩ thuật dùng để biến đổi ảnh.
Biến đổi ảnh nhằm làm giảm các nguyên nhân của ảnh để việc xử lý hiệu quả
hơn. Như làm rõ hơn các thông tin mà người dùng quan tâm nhưng người dùng phải
chấp nhận mất đi một số thông tin cần thiết.
Phân tích ảnh
Phân tích ảnh liên quan đến việc xác định các độ đo định lượng của 1 ảnh để
đưa ra một mơ tả đầy đủ về ảnh.
Q trình phân tích ảnh thực chất bao gồm nhiều cơng đoạn nhỏ. Trước hết là
công việc tăng cường ảnh để nâng cao chất lượng ảnh, giai đoạn tiếp theo là phát hiện
các đặc tính như phát hiện biên, phân vùng ảnh, trích chọn các đặc tính..v.v..
Tăng cường ảnh – khơi phục ảnh
Tăng cường ảnh là một bước quan trọng, tạo tiền đề cho xử lý ảnh. Nó gồm
các kỹ thuật như: lọc độ tương phản, khử nhiễu, nổi màu…
Khôi phục ảnh là nhằm loại bỏ các suy giảm trong ảnh.
Xử lý biên ảnh
Biên là vấn đề chủ yếu trong phân tích ảnh vì các điểm trích chọn trong q
trình phân tích ảnh đều dựa vào biên. Mỗi điểm ảnh có thể là biên nếu ở đó có sự thay
7
đổi đột ngột về mức xám. Tập hợp các điểm biên tạo thành biên hay đường bao quanh
của ảnh.
Phân vùng ảnh
Phân vùng là bước then chốt trong xử lý ảnh. Giai đoạn này nhằm phân tích
ảnh thành những thành phần có tính chất nào đó dựa theo biên hay các vùng liên
thông. Tiêu chuẩn để xác định các vùng liên thơng có thể là mức xám, cùng màu hay
độ tương phản.
Nhận dạng ảnh
Nhận dạng ảnh là quá trình liên quan đến các mô tả đối tượng mà người ta
muốn đặc tả nó. Q trình nhận dạng thường đi sau q trình trích chọn các đặc tính
chủ yếu của đối tượng. Có hai kiểu mơ tả đối tượng:
Mơ tả tham số (nhận dạng theo tham số).
Mô tả theo cấu trúc (nhận dạng theo cấu trúc).
Trên thực tế người ta đã áp dụng kỹ thuật nhận dạng khá thành công với nhiều
đối tượng khác nhau như: nhận dạng ảnh vân tay, nhận dạng chữ viết.
Nén ảnh
Dữ liệu ảnh cũng như các dữ liệu khác cần phải lưu trữ hay truyền đi trên mạng
mà lượng thông tin để biểu diễn cho một ảnh là rất lớn. Do đó làm giảm lượng thơng
tin hay nén dữ liệu là một nhu cầu cần thiết.
Nén dữ liệu là q trình làm giảm lượng thơng tin “dư thừa” trong dữ liệu gốc và
do vậy lượng thông tin thu được sau khi nén thường nhỏ hơn dữ liệu gốc rất nhiều.
Biểu diễn ảnh trong máy tính
1.2.1 Ảnh màu
Hệ màu RGB
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.
8
Hình 1.2. Minh họa hệ màu RGB
Hình 1.2 minh họa việc chọn màu thường thấy trong các chương trình máy
tính. Khi ta chọn một màu thì sẽ ra một bộ ba số tương ứng (r,g,b) màu được chọn. Ở
đây là rgb(102, 255, 153), nghĩa là r=102, g=255, b=153.
Biểu diễn ảnh màu
Hình 1.3. Ví dụ về ảnh màu
Ảnh màu (Hình 1.3) là một ma trận các pixel mà mỗi pixel biểu diễn một điểm
màu. Mỗi điểm màu được biểu diễn bằng bộ 3 số (r,g,b). Để tiện cho việc xử lý ảnh
thì sẽ tách ma trận pixel ra 3 channel red, green, blue.
Bức ảnh trên Hình 1.3 có kích thước 800 pixel * 600 pixel, bức ảnh này có thể
biểu diễn dưới dạng một ma trận kích thước 600 * 800 như (1.2).
9
(1.2)
Trong đó mỗi phần tử w ij là một pixel. Tuy nhiên để biểu diễn 1 màu ta cần
3 thông số (r,g,b) nên gọi w ij (rij, gij, bij ) ta có thể để biểu diễn dưới dạng ma trận
như sau:
Mỗi ma trận được tách ra (r, g, b) được gọi là 1 channel nên ảnh màu được gọi
là 3 channel: channel red, channel green, channel blue.
Ảnh màu trên máy tính sẽ được biểu diễn dưới dạng tensor 3 chiều chồng lên
nhau. Hình 1.4 mơ tả biểu diễn một ảnh màu kích thước 28*28 trên máy tính. Trong
đó, ảnh được biểu diễn dưới dạng tensor 3 chiều kích thước 28*28*3 do có 3 ma trận
(channel) màu red, green, blue kích thước 28*28 chồng lên nhau.
Hình 1.4. Biểu diễn ảnh theo tensor 3 chiều
10
1.2.2 Ảnh xám
Hình 1.5. Ví dụ về ảnh xám
Hình 1.5 mơ tả ảnh xám của bắc ảnh màu trong Hình 1.3. Tương tự ảnh màu,
ảnh xám cũng có kích thước 800 pixel * 600 pixel, có thể biểu diễn dưới dạng một
ma trận kích thước 600 * 800 như (1.2).
Tuy nhiên mỗi pixel trong ảnh xám chỉ cần biểu diễn bằng một giá trị nguyên
trong khoảng từ [0,255] thay vì (r,g,b) như trong ảnh màu. Giá trị 0 là màu đen, 255
là màu trắng và giá trị pixel càng gần 0 thì càng tối và càng gần 255 thì càng sáng.
Do đó khi biểu diễn ảnh xám trong máy tính chỉ cần một ma trận là đủ.
Phép tích chập trong xử lý ảnh
Phép tích chập (Convolution) là kỹ thuật quan trọng trong xử lý ảnh, được sử
dụng chính yếu trong các phép toán trên ảnh như: đạo hàm ảnh, làm trơn ảnh, trích
xuất biên cạnh trong ảnh…Kí hiệu phép tính convolution là : Y X W
Theo toán học, tích chập là phép tốn tuyến tính, cho ra kết quả là một hàm
bằng việc tính tốn dựa trên hai hàm đã có (X và W). Để cho dễ hình dung mình sẽ
lấy ví dụ trên ảnh xám, tức là ảnh được biểu diễn dưới dạng ma trận X kích thước
m*n [2] .
Cơng thức tích chập giữa hàm ảnh X(x, y) và bộ lọc W(x, y) (kích thước mxn):
Y x, y X x, y W x, y
m /2
n /2
X u, v W x u, y v
u m /2 v n /2
Kernel
(1.3)
11
Ta định nghĩa kernel là một ma trận vng kích thước k*k trong đó k là số lẻ.
k có thể bằng 1, 3, 5, 7, 9,… Ví dụ kernel kích thước 3*3 như (1.4)
(1.4)
Với mỗi phần tử x ij trong ma trận X lấy ra một ma trận có kích thước bằng
kích thước của kernel W có phần tử x ij làm trung tâm (đây là vì sao kích thước của
kernel thường lẻ) gọi là ma trận A. Sau đó tính tổng các phần tử của phép tính
element-wise của ma trận A và ma trận W, rồi viết vào ma trận kết quả Y.
Hình 1.6 minh hoạ việc thực hiện phép tích chập trong xử lý ảnh số khi tính
tại x 22 (ơ khoanh đỏ trong hình), ma trận A cùng kích thước với W, có x 22 làm trung
tâm có màu nền da cam. Sau đó tính y 11 :
y 11 x11 * w11 x12 * w12 x13 * w13 x21 * w21 x22 * w22
x23 * w23 x31 * w32 x32 * w32 x33 * w33 4
Hình 1.6. Minh họa phép tích chập trong xử lý ảnh
Hình 1.7. Ma trận đầu ra Y khi chập ảnh X với kernel W
(1.5)
Xem thêm: Top 9 giải vở bài tập lịch sử 8
12
Làm tương tự với các phần tử còn lại trong ma trận ta thu được kết quả là ma
trận Y đầu ra (Hình 1.7). Ma trận Y này có kích thước nhỏ hơn ma trận X. Kích thước
của ma trận Y là (m-k+1) * (n-k+1).
Padding
Như đã phân tích ở trên, mỗi lần thực hiện phép tính convolution xong, kích
thước ma trận Y đều nhỏ hơn X. Nếu muốn ma trận Y thu được có kích thước bằng
ma trận X ta phải thêm giá trị 0 ở viền ngoài ma trận X. Phép tính này gọi là
convolution với padding=1. Padding=k nghĩa là thêm k vector 0 vào mỗi phía của ma
trận (Hình 1.8).
Hình 1.8. Stride=1, padding=1
Stride
Như ở trên ta thực hiện tuần tự các phần tử trong ma trận X, thu được ma trận
Y cùng kích thước ma trận X, ta gọi là stride=1. Tuy nhiên, nếu stride=k (k > 1) thì
ta chỉ thực hiện phép tính convolution trên các phần tử x 1i*k ,1 j*k. Hình 1.9 minh họa
trường hợp stride=2.
Hình 1.9. Stride=2, padding=1
13
Hiểu đơn giản là bắt đầu từ vị trí x 11 sau đó nhảy k bước theo chiều dọc và
ngang cho đến hết ma trận X. Kích thước của ma trận Y lúc này là 3*3 đã giảm đi
đáng kể so với ma trận X. Tổng quát cho phép tính convolution của ma trận X kích
thước m*n với kernel kích thước k*k, stride = s, padding = p ra ma trận Y với kích
mk 2p n k 2p
1 *
1. Stride thường dùng để giảm kích thước của
s
s
thước là
ma trận sau phép tính convolution.
Ý nghĩa của phép tính convolution
Hình 1.10. Một số bộ lọc Kerne1 trong xử lý ảnh
Mục đích của phép tính convolution trên ảnh là làm mở, làm nét ảnh; xác định
các đường;… Mỗi kernel khác nhau thì sẽ phép tính convolution sẽ có ý nghĩa khác
nhau. Hình 1.10 minh họa một số bộ lọc Kernel được xử dụng trong các thao tác xử
lý ảnh như làm nét ảnh, xác định biên ảnh, làm mờ ảnh.
Lý thuyết phân loại ảnh số
1.4.1 Các khái niệm cơ bản
Mẫu và mô tả mẫu
14
Người ta mơ tả tất cả những kích thước vật lý có thể thu nhận được trong thế
giới xung quanh ta bằng các mẫu (pattern). Phân loại mẫu chính là việc xử lý mô tả
và diễn dịch các mẫu. Các mẫu thường được mô tả bằng một tập các thuộc tính đặc
trưng của đối tượng. Giả sử các pi là đại lượng biểu diễn đặc trưng của đối tượng đang
xét thì ta có thể biểu diên một mẫu là P p1, p2 ,… pn . Để mô tả mẫu từ các đặc trưng
của đối tượng người ta có thể sử dụng hai phương pháp sau:
– Phương pháp số
– Phương pháp cấu trúc
Khoảng cách mẫu:
Khoảng cách mẫu là một khái niệm được xây dựng để đánh giá các đối
tượng có ở “gần nhau” hay khơng. Khi khoảng cách nhỏ hơn một mức ngưỡng nào
đó thì ta có thể coi như hai đối tượng là đồng dạng với nhau và chúng sẽ ở cùng
một lớp. Trường hợp khoảng cách lớn hơn mức ngưỡng chúng sẽ thuộc về hai lớp
phân biệt.
Lớp mẫu và phân lớp mẫu:
Không gian mẫu là một tập các mẫu trộn lẫn nhau. Nhờ vào quá trình phân lớp
(classification) của bài tốn phân loại mà các mẫu được nhóm lại thành từng lớp mẫu
(class) riêng biệt. Các lớp mẫu phân biệt chứa các mẫu đồng dạng với nhau. Mỗi lớp
mẫu sẽ được gán một cái tên. Như vậy khi mẫu của một đối tượng được quá trình
phân lớp gán vào một lớp mẫu nào đó thì cũng có nghĩa là đối tượng đó đã được phân
loại.
Không gian mẫu và không gian diễn dịch
Các đặc trưng cơ bản của các đối tượng tạo nên các thành phần biểu diễn mẫu.
Tập hợp các mẫu của các đối tượng sẽ tạo nên khơng gian mẫu. Cịn tập các tên gọi
của các đối tượng tạo thành không gian diễn dịch. Nói một cách khác tập các mẫu
chuẩn sẽ tạo thành khơng gian diễn dịch. Như vậy q trình nhận dạng mẫu là q
trình ánh xạ f từ tập khơng gian mẫu ={P1 ,P2 ,…PN} sang tập không gian diễn dịch
={n1,n2,…,nS} (S:số tên gọi cho các đối tượng cần nhận dạng).
Nhận dạng được giám sát và không được giám sát:
LỜI CẢM ƠNLuận văn này được hoàn thành xong tại Trường Đại học Công nghệ tin tức vàTruyền thông dưới sự hướng dẫn của TS. Nguyễn Đình Dũng. Tác giả xin bàytỏ lịng biết ơn tới những thầy cơ giáo thuộc Trường Đại học Công nghệ Thông tinvà Truyền thông, những thầy cô giáo thuộc Viện Công nghệ Thông tin – Viện Hànlâm Khoa học và Công nghệ Nước Ta đã tạo điều kiện kèm theo, giúp sức tác giả trongquá trình học tập và làm luận văn tại Trường, đặc biệt quan trọng tác giả xin bày tỏ lịng biếtơn tới TS. Nguyễn Đình Dũng đã tận tình hướng dẫn và phân phối nhiều tài liệucần thiết để tác giả hoàn toàn có thể hồn thành luận văn đúng thời hạn. Xin chân thành cảm ơn anh chị em học viên cao học và bạn hữu đồng nghiệpđã trao đổi, khuyến khích tác giả trong q trình học tập và làm luận văn tại Trường Đạihọc Công nghệ tin tức và Truyền thông – Đại học Thái Nguyên. Cuối cùng tác giả xin gửi lời cảm ơn đến mái ấm gia đình, những người đã lnbên cạnh, động viên và khuyến khích tơi trong q trình thực thi đề tài. Thái Nguyên, tháng 10 năm 2020H ọc viên cao họcLê Cẩm HàiiLỜI CAM ĐOANTôi xin cam kết luận văn này do chính tơi triển khai, dưới sự hướngdẫn khoa học của TS. Nguyễn Đình Dũng, những hiệu quả triết lý được trìnhbày trong luận văn là sự tổng hợp từ những tác dụng đã được cơng bố và có tríchdẫn không thiếu, tác dụng của chương trình thực nghiệm trong luận văn này đượctác giả triển khai là trọn vẹn trung thực, nếu sai tơi hồn tồn chịu tráchnhiệm. Thái Ngun, tháng 10 năm 2020H ọc viênLê Cẩm HàiiiMỤC LỤCMột số thuật toán tiêu biểu vượt trội trong phân loại ảnh …………………………………….. 191.5.1 Thuật toán KNN ………………………………………………………………………………. 191.5.2 Thuật toán sử dụng mạng Nơ ron ……………………………………………………….. 201.5.3 Thuật toán SVM ………………………………………………………………………………. 21K ết luận chương 1 …………………………………………………………………………….. 21CH ƯƠNG 2M ẠNG NƠ RON CNN VÀ ỨNG DỤNG TRONG PHÂN LOẠIẢNH ………………………………………………………………………………………….. 23 ivCác khái niệm chung về mạng nơron …………………………………………………… 232.1.1 Mạng nơron sinh học ………………………………………………………………………… 232.1.2 Mạng nơron tự tạo ………………………………………………………………………… 242.1.3 Mơ hình tốn học và kiến trúc mạng nơron ………………………………………….. 272.1.4 Phân loại mạng nơ ron ………………………………………………………………………. 302.1.5 Huấn luyện mạng nơron ……………………………………………………………………. 31M ạng nơron CNN ……………………………………………………………………………… 322.2.1 Giới thiệu ………………………………………………………………………………………… 322.2.2 Kiến trúc mạng CNN ………………………………………………………………………… 332.2.3 Ứng dụng CNN trong phân loại ảnh ……………………………………………………. 37X ây dựng mạng CNN cho phân loại ảnh ……………………………………………… 382.3.1 Trường tiếp đón cục bộ ( Local receptive fields ) …………………………………. 382.3.2 Trọng số san sẻ và độ lệch ( Shared weights and biases ) ……………………….. 422.3.3 Lớp chứa hay lớp tổng hợp ( Pooling layer ) …………………………………………. 422.3.4 Cách chọn tham số cho CNN …………………………………………………………….. 45C ập nhật một số ít hướng nghiên cứu và điều tra về bài toán phân loại ảnh sử dụng mạngnơ ron CNN ……………………………………………………………………………………………….. 452.4.1 Các nghiên cứu và điều tra trên quốc tế ………………………………………………………………. 452.4.2 Các điều tra và nghiên cứu trên trong nước …………………………………………………………. 46K ết luận chương ……………………………………………………………………………….. 48CH ƯƠNG 3X ÂY DỰNG CHƯƠNG TRÌNH MƠ PHỎNG ỨNG DỤNG MẠNGCNN TRONG PHÂN LOẠI ẢNH ……………………………………………………………….. 49 Đặt yếu tố ………………………………………………………………………………………… 49B ài toán nhận dạng chữ viết tay ………………………………………………………….. 503.2.1 Mơ tả bài tốn ………………………………………………………………………………….. 503.2.2 Các bước thực thi …………………………………………………………………………… 513.2.3 Một số hiệu quả đạt được ……………………………………………………………………. 57B ài tốn giải thuật Capcha …………………………………………………………………….. 613.3.1 Mơ tả bài tốn ………………………………………………………………………………….. 613.3.2 Các bước triển khai …………………………………………………………………………… 653.3.3 Một số tác dụng đạt được ……………………………………………………………………. 67K ết luận chương ……………………………………………………………………………….. 68K ẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN ……………………………………………………… 70T ÀI LIỆU THAM KHẢO ……………………………………………………………………………. 72 viDANH MỤC CÁC TỪ VIẾT TẮTTừ hoặcTừ tiếng Anhcụm từTừ tiếng ViệtAIArtificial IntelligenceTrí tuệ nhân tạoANNArtificial Neural NetworkMạng nơron nhân tạoCVComputer VisionThị giác máy tínhCNNConvolutional Neural NetworkMạng nơron tích chậpDLDeep LearningHọc sâuCompletely Automated Public Phép thử Turing cơng cộng hồnCAPCHA Turing test to tell Computers and toàn tự động hóa để phân biệt máy tínhHumans Apartvới ngườiMCRMiss Classification RateTỷ lệ nhận dạng saiRMSERoot Mean Square ErrorSai số bình phương trung bìnhMLPMultilayer Neural NetworkMạng nơron nhiều lớpModified National Institute ofMNISTStandardsandTechnology Cơ sở tài liệu về chữ số viết taydatabaseReLURectified Linear UnitsHàm tinh chỉnh những đơn vị chức năng tuyến tínhviiDANH MỤC CÁC HÌNH ẢNHHình 1.1. Các tiến trình chính trong giải quyết và xử lý ảnh ………………………………………………….. 5H ình 1.2. Minh họa hệ màu RGB ……………………………………………………………………. 8H ình 1.3. Ví dụ về ảnh màu ……………………………………………………………………………. 8H ình 1.4. Biểu diễn ảnh theo tensor 3 chiều ……………………………………………………… 9H ình 1.5. Ví dụ về ảnh xám ………………………………………………………………………….. 10H ình 1.6. Minh họa phép tích chập trong giải quyết và xử lý ảnh …………………………………………. 11H ình 1.7. Ma trận đầu ra Y khi chập ảnh X với kernel W …………………………………. 11H ình 1.8. Stride = 1, padding = 1 ………………………………………………………………………. 12H ình 1.9. Stride = 2, padding = 1 ………………………………………………………………………. 12H ình 1.10. Một số bộ lọc Kerne1 trong giải quyết và xử lý ảnh ……………………………………………. 13H ình 1.11. Phương pháp lưới ………………………………………………………………………… 16H ình 1.12. Phương pháp cung ……………………………………………………………………….. 16H ình 1.13. Biểu diễn mẫu bằng tập kí hiệu ……………………………………………………… 18H ình 1.14. Minh họa thuật tốn KNN …………………………………………………………….. 19H ình 2.1. Cấu trúc cơ bản của nơron sinh học …………………………………………………. 23H ình 2.2. Nơron tự tạo ……………………………………………………………………………… 25H ình 2.3. Mơ hình tốn học mạng nơron tự tạo …………………………………………… 27H ình 2.4. Nơron 1 nguồn vào với hàm hoạt hoá là hàm hardlimit …………………………. 29H ình 2.5. Phân loại mạng nơ ron …………………………………………………………………… 30H ình 2.6. Học có giám sát …………………………………………………………………………….. 31H ình 2.7. Học khơng có giám sát …………………………………………………………………… 31H ình 2.8. Học tăng cường …………………………………………………………………………….. 32H ình 2.9. Cách máy tính “ nhìn ” một hình [ 16 ] ………………………………………………… 32H ình 2.10. Mạng nơ-ron thơng thường ( trái ) và CNN ( phải ) …………………………….. 34H ình 2.11. Kiến trúc mạng CNN …………………………………………………………………… 34H ình 2.12. Max pooling size 2 × 2 …………………………………………………………. 36H ình 2.13. Lớp liên kết vừa đủ ………………………………………………………………………. 36H ình 2.14. Các bước phân loại ảnh sử dụng mạng CNN …………………………………… 37 viiiHình 2.16. Lớp input gồm 28×28 nơ ron cho nhận dạng chữ từ tập dữ liệu MNIST. …………………………………………………………………………………………………………………. 38H ình 2.17. Kết nối vùng 5×5 nơ ron input với nơ ron lớp ẩn …………………………….. 39H ình 2.18. Vị trí mở màn của trường tiếp đón cục bộ ………………………………………. 39H ình 2.19. Vị trí thứ 2 của trường đảm nhiệm cục bộ và nơ ron lớp ẩn …………………. 40H ình 2.20. Trường tiếp đón cục bộ với ba map đặc trưng ……………………………. 40H ình 2.21. Trường đảm nhiệm cục bộ với 20 map đặc trưng ……………………………. 41H ình 2.22. Ví dụ về Max pooling 2×2 ……………………………………………………………. 43H ình 2.23. Max pooling với ba map đặc trưng …………………………………………….. 43H ình 2.24. Một kiến trúc mạng CNN cho nhận dạng chữ viết từ tài liệu MNIST … 44H ình 3.1. Giao diện chính của chương trình mơ phỏng …………………………………….. 49H ình 3.2. Chữ viết tay số “ 5 ” từ bộ tài liệu MNIST …………………………………………. 50H ình 3.3. Giao diện phong cách thiết kế mạng CNN …………………………………………………………. 55H ình 3.4. Mạng CNN cơ bản ………………………………………………………………………… 55H ình 3.5. Tiến trình luyện mạng với kernel 7 x 7 and 8 map đặc trưng. ………….. 56H ình 3.6. Giao diện chương trình nhận dạng chữ viết tay. ………………………………… 60H ình 3.7. Một số mẫu captcha ………………………………………………………………………. 62H ình 3.8. Một số hiệu quả tấn cơng captcha ……………………………………………………… 63H ình 3.9. Hai cách tiếp cận để nhận dạng captcha bằng CNN …………………………… 64H ình 3.10. Kiểu dữ liệu captcha dùng trong bài tốn nhận dạng ………………………… 65H ình 3.11. Kí tự W và Q. bị dính với nhau ………………………………………………………. 65H ình 3.12. Giãn nở ký tự trong captcha để dễ phát hiện vùng liên thơng ……………. 66H ình 3.13. Phát hiện thành phần liên thơng …………………………………………………….. 66H ình 3.14. Một mẫu captcha có 2 ký tự dính liền nhau …………………………………….. 66H ình 3.15. Vùng nhận dạng liên tục nhận 2 ký tự vào 1 ảnh cắt, chưa tốt …………… 66H ình 3.16. Kết quả sau khi dùng thủ pháp cắt đôi vùng nhận những ký tự liền nhau .. 66H ình 3.17. Ví dụ tập những ảnh kí tự đã được cắt và xếp theo thư mục ………………….. 67H ình 3.18. Chương trình mơ phỏng nhận dạng mã Captcha ……………………………… 68 ixDANH MỤC BẢNG BIỂUBảng 2.1. Một số dạng hàm hoạt hóa trong mạng nơron tự tạo ……………………… 29B ảng 3.1. Các tham số hoạt động giải trí của mạng CNN cơ bản …………………………………. 57B ảng 3.2. Các tham số hoạt động giải trí của mạng CNN ba lớp ẩn ……………………………… 58B ảng 3.3. So sánh tác dụng của một số ít giải pháp trên bộ tài liệu MNIST ……….. 61M Ở ĐẦU1. Tính khoa học và cấp thiết của đề tàiỨng dụng của công nghệ tiên tiến phân loại lúc bấy giờ đang tăng trưởng rất mạnh ở rấtnhiều nghành như : học thuật, kinh doanh thương mại, bảo mật thông tin, y tế … và những ở những đối tượng người dùng như : nhà điều tra và nghiên cứu xã hội, chính phủ nước nhà và những tổ chức triển khai phi doanh thu khác. Vì những tổ chứcnày chiếm hữu một lượng lớn tài liệu không có cấu trúc và việc giải quyết và xử lý tài liệu sẽ trở nêndễ dàng hơn rất nhiều nếu như những tài liệu này được chuẩn hóa bởi những chủ đề / nhãn. Nền tảng cơng nghệ để triển khai bài tốn phân loại chính là trí tuệ tự tạo ( ArtificialIntelligence – AI ) và học sâu ( Deep Learning – DL ). Trong ngành Thị giác máy tính ( Computer Vision – CV ), nhờ những thành tựcủa nghành nghề dịch vụ học sau mà trong những năm gần đây, ta đã tận mắt chứng kiến được nhiều thànhtựu vượt bậc. Các mạng lưới hệ thống giải quyết và xử lý ảnh lớn như Facebook, Google hay Amazon đã đưavào mẫu sản phẩm của mình những công dụng thơng minh như nhận diện khuôn mặt ngườidùng, tăng trưởng xe hơi tự lái hay drone giao hàng tự động hóa. Từ lâu những nhà khoa học đã nhận thấy những ưu điểm của bộ óc con người vàtìm cách bắt chước để thực thi trên những máy tính, tạo cho nó có năng lực học tập, nhận dạng và phân loại. Vì vậy những nhà khoa học đã điều tra và nghiên cứu và phát minh sáng tạo ra mạngnơron tự tạo. Nó thực sự được quan tâm và nhanh gọn trở thành một hướng nghiêncứu mới triển vọng đặc biệt quan trọng là nghành nghề dịch vụ nhận dạng, Dự kiến và phân loại. Convolutional Neural Network ( Mạng nơ-ron tích chập – CNN ) là một trongnhững mơ hình Deep Learning tiên tiến và phát triển giúp cho tất cả chúng ta thiết kế xây dựng được những hệthống mưu trí với độ đúng chuẩn cao như lúc bấy giờ. Việc nghiên cứu và điều tra về mạng nơroncũng như mạng CNN ( tích chập ) và sử dụng mơ hình CNNs trong phân lớp ảnh ( Image Classification ) là một bài tốn dầy mê hoặc và có năng lực vận dụng để giảiquyết nhiều yếu tố trong thực tiễn. Được sự gợi ý của thầy giáo hướng dẫn tôi đã chọn đề tài : “ Nghiên cứu mạngnơron CNN và ứng dụng trong bài toán phân loại ảnh ” làm luận văn tốt nghiệp củamình. Mục tiêu chính của luận văn là khám phá về bài tốn phân loại hình ảnh trongCV và cách thực thi bằng mạng CNN cho hai ứng dụng ( bài toán nhận dạng chữviết tay và bài toán giải thuật Capcha ). 2. Đối tượng và khoanh vùng phạm vi điều tra và nghiên cứu của đề tài – Đối tượng nghiên cứu và điều tra : Luận văn nghiên cứu và điều tra kỹ thuật phân loại ảnh sử dụngmạng CNN – Phạm vi điều tra và nghiên cứu : Luận văn tập trung nghiên cứu và điều tra trên hai bài toán ( bài toánnhận dạng chữ viết tay và bài toán giải thuật Capcha ) dựa trên những bộ tài liệu ảnhcó sẵn được cộng đồng khoa học quốc tế công nhận. 3. Phương pháp luận điều tra và nghiên cứu – Phương pháp điều tra và nghiên cứu triết lý : Tổng hợp, nghiên cứu và điều tra những tài liệu về bàitoán phân loại ảnh, mạng nơ ron CNN ; Tìm hiểu những kỹ năng và kiến thức tương quan. Ứng dụngmạng nơ ron CNN bài toán nhận dạng chữ viết tay và bài toán giải thuật Capcha. – Phương pháp nghiên cứu và điều tra thực nghiệm : Sau khi nghiên cứu và điều tra kim chỉ nan, luậnvăn sẽ tập trung chuyên sâu vào thiết kế xây dựng ứng dụng mô phỏng việc phân loại tài liệu ảnh tronghai bài toán nêu trên ; Đánh giá tác dụng sau khi thử nghiệm – Phương pháp trao đổi khoa học : Thảo luận, xemina, lấy quan điểm chuyên viên. 4. Nội dung và bố cục tổng quan của luận vănNgoài phần khởi đầu, Tóm lại và hướng tăng trưởng, luận văn được bố cục tổng quan thànhba chương chính như sau : Chương 1 Tổng quan bài tốn phân loại ảnh số : Nghiên cứu những khái niệm cơbản trong giải quyết và xử lý ảnh số, tập trung chuyên sâu sâu vào phân loại ảnh số, 1 số ít thuật toán tiêu biểuđược sử dụng trong phân loại ảnh số. Chương 2 Mạng nơ ron CNN và ứng dụng trong phân loại ảnh : Nghiên cứu vềmạng nơron tự tạo, tập trung chuyên sâu vào mạng nơron CNN và những ứng dụng của mạng nàytrong thực tiễn, đặc biệt quan trọng trong phân lớp tài liệu ảnhChương 3 Xây dựng chương trình mơ phỏng ứng dụng mạng CNN trong phânloại ảnh : Chương này trình làng về hai bài toán nhận dạng chữ viết tay và giải mãCapcha. Xây dựng những mơ hình mạng nơ ron CNN để xử lý hai bài tốn này dựatrên tập mẫu tài liệu ảnh có sẵn được cộng đồng khoa học quốc tế công nhận. Đánhgiá hiệu năng của mơ hình mạng CNN thu được với 1 số ít giải pháp cơng bốtrước đó. CHƯƠNG 1T ỔNG QUAN BÀI TOÁN PHÂN LOẠI ẢNH SỐTổng quan giải quyết và xử lý ảnh số1. 1.1 Một số khái niệm cơ bản trong giải quyết và xử lý ảnhẢnh sốẢnh số trong thực tiễn là màn biểu diễn số học của hình ảnh trong máy tính, thường là biểudiễn nhị phân. Có thể phân ảnh số thành 2 loại : ảnh xám và ảnh màu. Ảnh xám thực ra là một hàm hai chiều của cường độ sáng f ( x, y ), trong đó xvà y là những toạ độ khơng gian và giá trị của hàm f tại một điểm ( x, y ) tỷ suất với cườngđộ sáng của ảnh tại điểm đó. Nếu tất cả chúng ta có một ảnh mầu thì f là một vector mà mỗithành phần của vector đó chỉ ra cường độ sáng của ảnh tại điểm ( x, y ) đó tương ứngvới dải mầu [ 2 ]. Mỗi thành phần của mảng ( x, y ) được gọi là một điểm ảnh ( px : pictureelement ) và là thành phần nhỏ nhất cấu trúc nên ảnh. Điểm ảnh được hiểu như 1 dấu hiệuhay cường độ sáng tại một tọa độ xác lập trong khơng gian. Hình ảnh được xem nhưlà 1 tập hợp những điểm. Với cùng kích cỡ nếu sử dụng càng nhiều điểm ảnh thì bứcảnh càng đẹp, càng mịn và càng bộc lộ rõ hơn chi tiết cụ thể của ảnh người ta gọi đặc điểmnày là độ phân giải. Cường độ sáng của một ảnh tại một ví trí điểm ảnhMỗi điểm ảnh của một ảnh tương ứng với một phần của một đối tượng người tiêu dùng vật lýtồn tại trong quốc tế thực. Đối tượng vật lý này được chiếu sáng bởi một vài tia sángmà tia sáng này bị phản xạ một phần hay hấp thụ một phần khi chiếu lên đối tượngvật lý đó. Phần ánh sáng phản xạ lại đi tới những bộ cảm ứng được sử dụng để tạo ảnhcảm nhận và tạo ra những giá trị ghi nhận được đối tượng người tiêu dùng so với từng điểm ảnh. Giá trịthu nhận được nhờ vào vào phổ ánh sáng phản xạ. Giá trị cường độ sáng của cácđiểm ảnh khác nhau chỉ có ý nghĩa tương đối mà khơng có ý nghĩa trong những tốnhạng tuyệt đối [ 2 ]. Số bits thiết yếu để tàng trữ một ảnhỞ đây tất cả chúng ta chỉ chăm sóc tới ảnh xám, nếu ảnh được tàng trữ dưới dạng mộtmảng hai chiều với size NxN và có 2 m mức xám thì số bits thiết yếu để lưu trữảnh là : b N x N x 2 m ( 1.1 ) Ví dụ như, một ảnh cỡ 512 x 512 với 256 ( tức m = 8 ) mức xám thì cần số bitslưu trữ là : 512 x 512 x 256 = 2.097.152 bits. Độ phân giải ảnhĐộ phân giải ảnh trình diễn mức độ cụ thể của ảnh mà tất cả chúng ta hoàn toàn có thể nhìn rõđối tượng. Khi đổi khác những giá trị m và N trong phương trình thì sẽ có những hiện tượngthay đổi khác nhau. Xong thực nghiệm cho thấy khi giữ nguyên size ảnh N vàtăng số mức xám m lên thì sẽ bộc lộ rõ hơn mức độ chi tiết cụ thể trong ảnh. 1.1.2 Tổng quan về một mạng lưới hệ thống giải quyết và xử lý ảnhXử lý ảnh là đối tượng người dùng điều tra và nghiên cứu của nghành nghề dịch vụ thị giác máy, là quy trình biếnđổi từ một ảnh khởi đầu sang một ảnh mới với những đặc tính và tuân theo ý muốn củangười sử dụng. Xử lý ảnh hoàn toàn có thể gồm q trình nghiên cứu và phân tích, phân lớp những đối tượng người tiêu dùng, làm tăng chất lượng, phân đoạn và tách cạnh, gán nhãn cho vùng hay quy trình biêndịch những thơng tin hình ảnh của ảnh [ 2 ]. Cũng như giải quyết và xử lý tài liệu bằng đồ hoạ, giải quyết và xử lý ảnh số là một nghành nghề dịch vụ của tin họcứng dụng. Xử lý tài liệu bằng đồ hoạ đề cập đến những ảnh tự tạo, những ảnh nàyđược xem xét như thể một cấu trúc tài liệu và được tạo ra bởi những chương trình. Xử lýảnh số gồm có những chiêu thức và kĩ thuật để đổi khác, để truyền tải hoặc mã hốcác ảnh tự nhiên. Mục đích của giải quyết và xử lý ảnh gồm : Biến đổi ảnh, làm tăng chất lượng ảnh. Tự động nhận dạng, đoán nhận, nhìn nhận những nội dung của ảnh. Các bước thiết yếu trong giải quyết và xử lý ảnh được miêu tả cụ thể trong Hình 1.1 bao gồmcác bước sau : CAMERALưu trữThu nhậnảnhSố hóaPhân tíchảnhPhân loạiảnhSCANNERLưu trữHệ Q.địnhHình 1.1. Các quy trình tiến độ chính trong giải quyết và xử lý ảnhĐầu tiên là quy trình thu nhận ảnh. Ảnh hoàn toàn có thể thu nhận được qua camera. Thường khi thu nhận ảnh qua camera là tín hiệu tựa như ( loại camera ống kiểuCCIR ), nhưng cũng hoàn toàn có thể là tín hiệu số hóa ( loại CCD – Charge Coupled Device ). Ảnh cũng hoàn toàn có thể thu nhận từ vệ tinh qua những bộ cảm ứng ( sensor ), hay ảnh tranh đượcquét trên scanner. Tiếp theo là q trình số hóa ( Digitalizer ) để biến hóa tín hiệu tươngtự sang tín hiệu rời rạc ( lấy mẫu ) và số hóa bằng lượng hóa, trước khi chuyển sanggiai đoạn giải quyết và xử lý, nghiên cứu và phân tích hay tàng trữ lại. Trước hết là việc làm tăng cường ảnh đểnâng cao chất lượng ảnh. Do những nguyên do khác nhau : hoàn toàn có thể do chất lượngthiết bị thu nhận ảnh, do nguồn sáng hay do nhiễu, ảnh hoàn toàn có thể bị suy biến do vậy cầnphải tăng cường và Phục hồi lại ảnh để làm điển hình nổi bật 1 số ít đặc tính chính của ảnh, hay làm cho ảnh gần giống nhất với trạng thái gốc – trạng thái trước khi bị biến dạng. Giai đoạn tiếp theo là phát hiện những đặc tính như biên, phân vùng ảnh, trích chọn cácđặc tính … v.v… Cuối cùng tùy theo mục tiêu của ứng dụng, sẽ là quá trình nhận dạng, phânloại hay những quyết định hành động khác. 1.1.3 Một số thao tác cơ bản trong giải quyết và xử lý ảnhBiểu diễn ảnhTrong trình diễn ảnh, người ta thường dùng những thành phần đặc trưng của ảnh làpixel. Nhìn chung hoàn toàn có thể một hàm hai biến chứa những thông tin như trình diễn của mộtảnh. Các mơ hình màn biểu diễn cho ta một mơ tả logic hay định lượng những đặc thù củahàm này. Trong màn biểu diễn ảnh cần quan tâm đến tính trung thực hoặc những tiêu chuẩn “ mưu trí ” để đo chất lượng ảnh hoặc tính hiệu suất cao của những kĩ thuật giải quyết và xử lý. Một số mơ hình thường được dùng trong màn biểu diễn ảnh : mơ hình bài tốn, mơhình thống kê. Trong mơ hình bài tốn, ảnh hai chiều được màn biểu diễn nhờ những hàm haibiến trực giao gọi là những hàm cơ sở. Cịn mơ hình thống kê, một ảnh được coi nhưmột thành phần của một tập hợp đặc trưng bởi những đại lượng như : kỳ vọng toán học, hiệpbiến, phương sai, moment. Biến đổi ảnh ( Image Transform ) Thuật ngữ biến hóa ảnh thường dùng để nói tới một lớp những ma trận đơn vị chức năng vàcác kĩ thuật dùng để biến hóa ảnh. Biến đổi ảnh nhằm mục đích làm giảm những nguyên do của ảnh để việc giải quyết và xử lý hiệu quảhơn. Như làm rõ hơn những thông tin mà người dùng chăm sóc nhưng người dùng phảichấp nhận mất đi 1 số ít thông tin thiết yếu. Phân tích ảnhPhân tích ảnh tương quan đến việc xác lập những độ đo định lượng của 1 ảnh đểđưa ra một mơ tả khá đầy đủ về ảnh. Q trình nghiên cứu và phân tích ảnh thực ra gồm có nhiều cơng đoạn nhỏ. Trước hết làcông việc tăng cường ảnh để nâng cao chất lượng ảnh, quá trình tiếp theo là phát hiệncác đặc tính như phát hiện biên, phân vùng ảnh, trích chọn những đặc tính .. v.v.. Tăng cường ảnh – khơi phục ảnhTăng cường ảnh là một bước quan trọng, tạo tiền đề cho giải quyết và xử lý ảnh. Nó gồmcác kỹ thuật như : lọc độ tương phản, khử nhiễu, nổi màu … Khôi phục ảnh là nhằm mục đích vô hiệu những suy giảm trong ảnh. Xử lý biên ảnhBiên là yếu tố hầu hết trong nghiên cứu và phân tích ảnh vì những điểm trích chọn trong qtrình nghiên cứu và phân tích ảnh đều dựa vào biên. Mỗi điểm ảnh hoàn toàn có thể là biên nếu ở đó có sự thayđổi bất thần về mức xám. Tập hợp những điểm biên tạo thành biên hay đường bao quanhcủa ảnh. Phân vùng ảnhPhân vùng là bước then chốt trong giải quyết và xử lý ảnh. Giai đoạn này nhằm mục đích phân tíchảnh thành những thành phần có đặc thù nào đó dựa theo biên hay những vùng liênthông. Tiêu chuẩn để xác lập những vùng liên thơng hoàn toàn có thể là mức xám, cùng màu hayđộ tương phản. Nhận dạng ảnhNhận dạng ảnh là quy trình tương quan đến những diễn đạt đối tượng người tiêu dùng mà người tamuốn đặc tả nó. Q trình nhận dạng thường đi sau q trình trích chọn những đặc tínhchủ yếu của đối tượng người dùng. Có hai kiểu mơ tả đối tượng người dùng : Mơ tả tham số ( nhận dạng theo tham số ). Mô tả theo cấu trúc ( nhận dạng theo cấu trúc ). Trên trong thực tiễn người ta đã vận dụng kỹ thuật nhận dạng khá thành công xuất sắc với nhiềuđối tượng khác nhau như : nhận dạng ảnh vân tay, nhận dạng chữ viết. Nén ảnhDữ liệu ảnh cũng như những tài liệu khác cần phải tàng trữ hay truyền đi trên mạngmà lượng thông tin để trình diễn cho một ảnh là rất lớn. Do đó làm giảm lượng thơngtin hay nén tài liệu là một nhu yếu thiết yếu. Nén dữ liệu là q trình làm giảm lượng thơng tin “ dư thừa ” trong tài liệu gốc vàdo vậy lượng thông tin thu được sau khi nén thường nhỏ hơn tài liệu gốc rất nhiều. Biểu diễn ảnh trong máy tính1. 2.1 Ảnh màuHệ màu RGBRGB viết tắt của red ( đỏ ), green ( xanh lục ), blue ( xanh lam ), là ba màu chínhcủ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 những màu khác nhau. Hình 1.2. Minh họa hệ màu RGBHình 1.2 minh họa việc chọn màu thường thấy trong những chương trình máytính. Khi ta chọn một màu thì sẽ ra một bộ ba số tương ứng ( r, g, b ) màu được chọn. Ởđây là rgb ( 102, 255, 153 ), nghĩa là r = 102, g = 255, b = 153. Biểu diễn ảnh màuHình 1.3. Ví dụ về ảnh màuẢnh màu ( Hình 1.3 ) là một ma trận những px mà mỗi px trình diễn một điểmmàu. Mỗi điểm màu được trình diễn bằng bộ 3 số ( r, g, b ). Để tiện cho việc giải quyết và xử lý ảnhthì sẽ tách ma trận px ra 3 channel red, green, blue. Bức ảnh trên Hình 1.3 có size 800 px * 600 px, bức ảnh này có thểbiểu diễn dưới dạng một ma trận size 600 * 800 như ( 1.2 ). ( 1.2 ) Trong đó mỗi thành phần w ij là một px. Tuy nhiên để trình diễn 1 màu ta cần3 thông số kỹ thuật ( r, g, b ) nên gọi w ij ( rij, gij, bij ) ta hoàn toàn có thể để trình diễn dưới dạng ma trậnnhư sau : Mỗi ma trận được tách ra ( r, g, b ) được gọi là 1 channel nên ảnh màu được gọilà 3 channel : channel red, channel green, channel blue. Ảnh màu trên máy tính sẽ được màn biểu diễn dưới dạng tensor 3 chiều chồng lênnhau. Hình 1.4 mơ tả màn biểu diễn một ảnh màu size 28 * 28 trên máy tính. Trongđó, ảnh được màn biểu diễn dưới dạng tensor 3 chiều size 28 * 28 * 3 do có 3 ma trận ( channel ) màu red, green, blue kích cỡ 28 * 28 chồng lên nhau. Hình 1.4. Biểu diễn ảnh theo tensor 3 chiều101. 2.2 Ảnh xámHình 1.5. Ví dụ về ảnh xámHình 1.5 mơ tả ảnh xám của bắc ảnh màu trong Hình 1.3. Tương tự ảnh màu, ảnh xám cũng có size 800 px * 600 px, hoàn toàn có thể màn biểu diễn dưới dạng mộtma trận kích cỡ 600 * 800 như ( 1.2 ). Tuy nhiên mỗi px trong ảnh xám chỉ cần màn biểu diễn bằng một giá trị nguyêntrong khoảng chừng từ [ 0,255 ] thay vì ( r, g, b ) như trong ảnh màu. Giá trị 0 là màu đen, 255 là màu trắng và giá trị px càng gần 0 thì càng tối và càng gần 255 thì càng sáng. Do đó khi trình diễn ảnh xám trong máy tính chỉ cần một ma trận là đủ. Phép tích chập trong giải quyết và xử lý ảnhPhép tích chập ( Convolution ) là kỹ thuật quan trọng trong giải quyết và xử lý ảnh, được sửdụng chính yếu trong những phép toán trên ảnh như : đạo hàm ảnh, làm trơn ảnh, tríchxuất biên cạnh trong ảnh … Kí hiệu phép tính convolution là : Y X WTheo toán học, tích chập là phép tốn tuyến tính, cho ra hiệu quả là một hàmbằng việc tính tốn dựa trên hai hàm đã có ( X và W ). Để cho dễ tưởng tượng mình sẽlấy ví dụ trên ảnh xám, tức là ảnh được màn biểu diễn dưới dạng ma trận X kích thướcm * n [ 2 ]. Cơng thức tích chập giữa hàm ảnh X ( x, y ) và bộ lọc W ( x, y ) ( kích cỡ mxn ) : Y x, y X x, y W x, y m / 2 n / 2 X u, v W x u, y v u m / 2 v n / 2 Kernel ( 1.3 ) 11T a định nghĩa kernel là một ma trận vng kích cỡ k * k trong đó k là số lẻ. k hoàn toàn có thể bằng 1, 3, 5, 7, 9, … Ví dụ kernel size 3 * 3 như ( 1.4 ) ( 1.4 ) Với mỗi thành phần x ij trong ma trận X lấy ra một ma trận có size bằngkích thước của kernel W có thành phần x ij làm TT ( đây là vì sao kích cỡ củakernel thường lẻ ) gọi là ma trận A. Sau đó tính tổng những thành phần của phép tínhelement-wise của ma trận A và ma trận W, rồi viết vào ma trận hiệu quả Y.Hình 1.6 minh hoạ việc triển khai phép tích chập trong giải quyết và xử lý ảnh số khi tínhtại x 22 ( ơ khoanh đỏ trong hình ), ma trận A cùng size với W, có x 22 làm trungtâm có màu nền da cam. Sau đó tính y 11 : y 11 x11 * w11 x12 * w12 x13 * w13 x21 * w21 x22 * w22 x23 * w23 x31 * w32 x32 * w32 x33 * w33 4H ình 1.6. Minh họa phép tích chập trong giải quyết và xử lý ảnhHình 1.7. Ma trận đầu ra Y khi chập ảnh X với kernel W ( 1.5 ) 12L àm tương tự như với những thành phần còn lại trong ma trận ta thu được hiệu quả là matrận Y đầu ra ( Hình 1.7 ). Ma trận Y này có size nhỏ hơn ma trận X. Kích thướccủa ma trận Y là ( m-k+1 ) * ( n-k+1 ). PaddingNhư đã nghiên cứu và phân tích ở trên, mỗi lần triển khai phép tính convolution xong, kíchthước ma trận Y đều nhỏ hơn X. Nếu muốn ma trận Y thu được có kích cỡ bằngma trận X ta phải thêm giá trị 0 ở viền ngoài ma trận X. Phép tính này gọi làconvolution với padding = 1. Padding = k nghĩa là thêm k vector 0 vào mỗi phía của matrận ( Hình 1.8 ). Hình 1.8. Stride = 1, padding = 1 StrideNhư ở trên ta triển khai tuần tự những thành phần trong ma trận X, thu được ma trậnY cùng kích cỡ ma trận X, ta gọi là stride = 1. Tuy nhiên, nếu stride = k ( k > 1 ) thìta chỉ triển khai phép tính convolution trên những thành phần x 1 i * k, 1 j * k. Hình 1.9 minh họatrường hợp stride = 2. Hình 1.9. Stride = 2, padding = 113H iểu đơn thuần là mở màn từ vị trí x 11 sau đó nhảy k bước theo chiều dọc vàngang cho đến hết ma trận X. Kích thước của ma trận Y lúc này là 3 * 3 đã giảm điđáng kể so với ma trận X. Tổng quát cho phép tính convolution của ma trận X kíchthước m * n với kernel size k * k, stride = s, padding = p ra ma trận Y với kích m k 2 p n k 2 p 1 * 1 . Stride thường dùng để giảm size của thước là ma trận sau phép tính convolution. Ý nghĩa của phép tính convolutionHình 1.10. Một số bộ lọc Kerne1 trong giải quyết và xử lý ảnhMục đích của phép tính convolution trên ảnh là làm mở, làm nét ảnh ; xác địnhcác đường ; … Mỗi kernel khác nhau thì sẽ phép tính convolution sẽ có ý nghĩa khácnhau. Hình 1.10 minh họa một số ít bộ lọc Kernel được xử dụng trong những thao tác xửlý ảnh như làm nét ảnh, xác lập biên ảnh, làm mờ ảnh. Lý thuyết phân loại ảnh số1. 4.1 Các khái niệm cơ bản Mẫu và miêu tả mẫu14Người ta mơ tả toàn bộ những size vật lý hoàn toàn có thể thu nhận được trong thếgiới xung quanh ta bằng những mẫu ( pattern ). Phân loại mẫu chính là việc giải quyết và xử lý mô tảvà diễn dịch những mẫu. Các mẫu thường được miêu tả bằng một tập những thuộc tính đặctrưng của đối tượng người dùng. Giả sử những pi là đại lượng màn biểu diễn đặc trưng của đối tượng người tiêu dùng đangxét thì ta hoàn toàn có thể biểu diên một mẫu là P p1, p2, … pn . Để diễn đạt mẫu từ những đặc trưngcủa đối tượng người dùng người ta hoàn toàn có thể sử dụng hai chiêu thức sau : – Phương pháp số – Phương pháp cấu trúc Khoảng cách mẫu : Khoảng cách mẫu là một khái niệm được thiết kế xây dựng để nhìn nhận những đốitượng có ở “ gần nhau ” hay khơng. Khi khoảng cách nhỏ hơn một mức ngưỡng nàođó thì ta hoàn toàn có thể coi như hai đối tượng người tiêu dùng là đồng dạng với nhau và chúng sẽ ở cùngmột lớp. Trường hợp khoảng cách lớn hơn mức ngưỡng chúng sẽ thuộc về hai lớpphân biệt. Lớp mẫu và phân lớp mẫu : Không gian mẫu là một tập những mẫu trộn lẫn nhau. Nhờ vào quy trình phân lớp ( classification ) của bài tốn phân loại mà những mẫu được nhóm lại thành từng lớp mẫu ( class ) riêng không liên quan gì đến nhau. Các lớp mẫu phân biệt chứa những mẫu đồng dạng với nhau. Mỗi lớpmẫu sẽ được gán một cái tên. Như vậy khi mẫu của một đối tượng người dùng được quá trìnhphân lớp gán vào một lớp mẫu nào đó thì cũng có nghĩa là đối tượng người tiêu dùng đó đã được phânloại. Không gian mẫu và khoảng trống diễn dịchCác đặc trưng cơ bản của những đối tượng người tiêu dùng tạo nên những thành phần màn biểu diễn mẫu. Tập hợp những mẫu của những đối tượng người tiêu dùng sẽ tạo nên khơng gian mẫu. Cịn tập những tên gọicủa những đối tượng người tiêu dùng tạo thành khoảng trống diễn dịch. Nói một cách khác tập những mẫuchuẩn sẽ tạo thành khơng gian diễn dịch. Như vậy q trình nhận dạng mẫu là qtrình ánh xạ f từ tập khơng gian mẫu = { P1, P2, … PN } sang tập khoảng trống diễn dịch = { n1, n2, …, nS } ( S : số tên gọi cho những đối tượng người dùng cần nhận dạng ). Nhận dạng được giám sát và không được giám sát :