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

NHẬN DẠNG CHỮ VIẾT TAY TIẾNG VIỆT SỬ DỤNG MẠNG NEURON TÍCH CHẬP

57 296 7
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 57
Dung lượng 4,59 MB

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

Nội dung

MỤC LỤC PHẦN MỞ ĐẦU Chương I. TỔNG QUAN TÀI LIỆU 1.1 . Giới thiệu. 1.1.1 . Tổng quan về nhận diện ký tự quang học 1.2 . Phạm vi nghiên cứu. 1.3 . Khái quát về xử lý ảnh. 1.3.1 . Một số khái niệm cơ bản 1.3.2 . Một số vấn đề trong xử lý ảnh ký tự 1.3.2.1 . Các hệ thống xử lý ảnh 1.3.2.2 . Các hình thái của ảnh 1.3.2.3 . Một số ứng dụng trong xử lý ảnh 1.4 . Hệ thống nhận diện ký tự viết tay. 1.4.1 . Những khó khan của bài toán 1.4.2 . Tầm quan trọng và ứng dụng của bài toán nhận dạng chữ viết tay 1.4.3 . Các thành phần của hệ thống Chương II. CƠ SƠ LÝ THUYẾT VÀ MÔ HÌNH NGHIÊN CỨU. 2.1 . Hệ thống phát hiện ký tự. 2.1.1 . Tiền xử lý 2.1.1.1 . Nhị phân hóa 2.1.1.2 . Phân ngưỡng ảnh với thuật toán Otsu 2.1.1.3 . Lọc ảnh 2.1.1.4 . Làm trơn biên chữ 2.1.1.5 . Làm mảnh chữ 2.1.1.6 . Làm đầy chữ 2.1.2 . Phát hiện ký tự, phát hiện biên canny 2.2 . Hệ thống nhận diện ký tự. 2.2.1 . Mạng nơron và mạng nơron lan truyền ngược 2.2.1.1 . Giới thiệu về mạng nơron. 2.2.1.2 . Một số kiểu mạng nơron. 2.2.1.3 . Mạng nơron truyền thẳng nhiều lớp MP 2.2.2 . Mạng nơron tích chập. 2.2.2.1 . Định nghĩa mạng nơron tích chập 2.2.2.2 . Tích chập (Convolution) 2.2.2.3 . Mô hình mạng nơron tích chập Chương III. THIẾT KẾ, MÔ PHỎNG 3.1.1 . Thu thập dữ liệu 3.1.2 . Huấn luyện dữ liệu 3.1.2.1 . Mô hình sử dụng 3.2.2.2 . Công cụ huấn luyện và phần cứng huấn luyện 3.2.2.3 . Các tiêu chi đánh giá và huấn luyện KẾT LUẬN VÀ HƯỚNG NGHIÊN CỨU TIẾP THEO DANH MỤC CHỮ VIẾT TẮT DANH MỤC ĐỒ THỊ Hình 1.1. Quá trình xử lý ảnh Hình 1.2. Các bước cơ bản trong một hệ thống xử lý ảnh Hình 1.3 Các thành phần của hệ thống nhận dạng Hình 2.1. Nhị phân hoá ảnh Hình 2.2. Ảnh và Histogram tương ứng của ảnh Hình 2.3. Minh hoạ việc lọc ảnh Hình 2.4.Minh hoạ kết quả của việc nhân ma trận Hình 2.5. Minh hoạ phép lọc Gauss Hình 2.6. (a) Ảnh gốc, (b) Ảnh sau khi được làm trơn biên. Hình 2.7. Làm mảnh chữ Hình 2.8. Phát hiện ký tự trong ảnh Hình 2.9. Tìm biên dựa trên điểm cực đại Hình 2.10. Minh hoạ về ngưỡng lọc Hình 2.11. Một vài ký tự thu được sau khi tiến hành phát hiện biên Hình 2.12. Cấu tạo một Neural Hình 2.13. Mạng tự kết hợp Hình 2.14. Mạng kết hợp khác kiểu Hình 2.15. Mạng neural lan truyền ngược MLP Hình 2.16 . Mô hình mạng neuron lan truyền ngược Hình 2.17 . Ảnh hưởng của kích thước mẫu Hình 2.18. Minh họa tích chập Hình 2.19 Ảnh mờ sau khi chập Hình 2.20. Ảnh được phát hiện biên sai khi chập Hình 2.21. Mô hình mạng neural tích chập Hình 2.22. Mô hình mạng perceptron đa tầng Hình 3.1. Một số ký tự trong bộ EMNIST Hình 3.2. Danh sách các lớp và các tham số Hình 3.3. Tóm tắt mô hình huấn luyện Hình 3.4. Độ chính xác trung bình sau mỗi vòng lặp Hình 3.5. Độ chính xác tuyệt đối của mỗi vòng lặp Hình 3.6. Giá trị trung bình của hàm mất mát qua mỗi vòng lặp Hình 3.7. Giá trị tuyệt đối của hàm mất mát tại mỗi vòng lặp Hình 3.8. Kết quả huấn luyện tổng thể DANH MỤC BẢNG LỜI MỞ ĐẦU Deep Learning là một thuật toán dựa trên một số ý tưởng từ não bộ tới việc tiếp thu nhiều tầng biểu đạt, cả cụ thể lẫn trừu tượng, qua đó làm rõ ý nghĩa của các từ loại dữ liệu. Deep Learning được ứng dụng trong nhận diện ảnh, nhận diện giọng nói, xử lý ngôn ngữ tự nhiên. Hiện nay rất nhiều các bài toán nhận dạng sử dụng deep learning để giải quyết do deep learning có thể giải quyết các bài toán với số lượng lớn, kích thước đầu vào lớn với hiệu năng cũng như độ chính xác vượt trội so với các phương pháp phân lớp truyền thống. Convolution Neural Network (CNNs – Mạng nơron tích chập) 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. Trong bài tiểu luận này, em đi vào nghiên cứu về mạng neural cũng như mạng Convolution của mô hình CNNs trong phân lớp ảnh, và áp dụng trong việc xây dựng hệ thống nhận dạng chữ viết tay tiếng Việt. Trong bài tiểu luận này em sẽ xây dựng mô hình mạng nơron tích chập với việc sử dụng nhiều lớp khác nhau của mạng để trích chọn tự động được các đặc trưng tốt nhất trong ảnh. Đồng thời, cũng kết hợp giữa mạng nơron tích chập và Multilayer Perceptron nhằm cải thiện hiệu suất của mô hình. Nhận dạng chữ viết tay là bài toán được quan tâm rất nhiều vì nó là một trong các yêu cầu trong nhiều ứng dụng thực tế. Các ứng dụng của nhận dạng chữ viết tay đã và đang được ứng dụng vào đời sống như phục vụ cho công việc tựu động hóa đọc tài liệu, tăng tốc độ và hiệu quả nhập thông tin vào máy tính. Nhận dạng chữ viết tay có thể phục vụ cho các ứng dụng đọc và xử lý các chứng từ, hóa đơn, phiếu ghi, bản viết tay chương trình, …. Hiện nay, đã có một số đề tài nghiên cứu nhận dạng chữ viết tay sử dụng các mô hình như: K láng giềng gần nhất (KNearest Neighbor KNN), máy hỗ trợ vectơ (Suport Vector Machine SVM), mô hình Markov ẩn (Hidden Markov ModelHMM)….. Tuy nhiên, các mô hình này cho kết quả nhận dạng không cao, mất nhiều thời gian cho việc trích rút đặc trưng ảnh. Vì vậy, trong nghiên cứu này chúng tôi sẽ xây dựng một mô hình mới để có thể trích rút tự động các đặc trưng trong ảnh và mô hình mới này cũng cho kết quả tốt hơn các mô hình trước đó.

Trang 1

HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG

KHOA CÔNG NGHỆ THÔNG TIN



BÀI TẬP MÔN CHUYÊN ĐỀ HỆ THỐNG THÔNG TIN

TÊN ĐỀ TÀI NHẬN DẠNG CHỮ VIẾT TAY TIẾNG VIỆT

SỬ DỤNG MẠNG NEURON TÍCH CHẬP

CHUYÊN NGÀNH : HỆ THỐNG THÔNG TIN

Trang 2

HÀ NỘI – NĂM 2021

HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG

BÀI TẬP MÔN CHUYÊN ĐỀ HỆ THỐNG THÔNG TIN

TÊN ĐỀ TÀI : NGHIÊN CỨU VỀ MẠNG NEURON TÍCH CHẬP

VÀ ỨNG DỤNG CHO BÀI TOÁN NHẬN DẠNG CHỮ VIẾT TAY

Trang 3

HÀ NỘI – NĂM 2021

MỤC LỤC PHẦN MỞ ĐẦU

Chương I TỔNG QUAN TÀI LIỆU

1.4.1 Những khó khan của bài toán

1.4.2 Tầm quan trọng và ứng dụng của bài toán nhận dạng chữ viết tay 1.4.3 Các thành phần của hệ thống

Chương II CƠ SƠ LÝ THUYẾT VÀ MÔ HÌNH NGHIÊN CỨU.

2.1 Hệ thống phát hiện ký tự.

2.1.1 Tiền xử lý

2.1.1.1 Nhị phân hóa 2.1.1.2 Phân ngưỡng ảnh với thuật toán Otsu 2.1.1.3 Lọc ảnh

2.1.1.4 Làm trơn biên chữ 2.1.1.5 Làm mảnh chữ 2.1.1.6 Làm đầy chữ 2.1.2 Phát hiện ký tự, phát hiện biên canny

2.2 Hệ thống nhận diện ký tự.

2.2.1 Mạng nơ-ron và mạng nơ-ron lan truyền ngược

2.2.1.1 Giới thiệu về mạng nơ-ron.

2.2.1.2 Một số kiểu mạng nơ-ron.

2.2.1.3 Mạng nơ-ron truyền thẳng nhiều lớp MP 2.2.2 Mạng nơ-ron tích chập.

2.2.2.1 Định nghĩa mạng nơ-ron tích chập 2.2.2.2 Tích chập (Convolution)

2.2.2.3 Mô hình mạng nơ-ron tích chập Chương III THIẾT KẾ, MÔ PHỎNG

3.1.1 Thu thập dữ liệu

3.1.2 Huấn luyện dữ liệu

Trang 4

3.1.2.1 Mô hình sử dụng 3.2.2.2 Công cụ huấn luyện và phần cứng huấn luyện 3.2.2.3 Các tiêu chi đánh giá và huấn luyện

KẾT LUẬN VÀ HƯỚNG NGHIÊN CỨU TIẾP THEO

Trang 5

Hình 2.2 Ảnh và Histogram tương ứng của ảnh

Hình 2.3 Minh hoạ việc lọc ảnh

Hình 2.4.Minh hoạ kết quả của việc nhân ma trận

Hình 2.5 Minh hoạ phép lọc Gauss

Hình 2.6 (a) Ảnh gốc, (b) Ảnh sau khi được làm trơn biên.

Hình 2.7 Làm mảnh chữ

Hình 2.8 Phát hiện ký tự trong ảnh

Hình 2.9 Tìm biên dựa trên điểm cực đại

Hình 2.10 Minh hoạ về ngưỡng lọc

Hình 2.11 Một vài ký tự thu được sau khi tiến hành phát hiện biên

Hình 2.12 Cấu tạo một Neural

Hình 2.13 Mạng tự kết hợp

Hình 2.14 Mạng kết hợp khác kiểu

Hình 2.15 Mạng neural lan truyền ngược MLP

Hình 2.16 Mô hình mạng neuron lan truyền ngược

Hình 2.17 Ảnh hưởng của kích thước mẫu

Hình 3.3 Tóm tắt mô hình huấn luyện

Hình 3.4 Độ chính xác trung bình sau mỗi vòng lặp

Hình 3.5 Độ chính xác tuyệt đối của mỗi vòng lặp

Hình 3.6 Giá trị trung bình của hàm mất mát qua mỗi vòng lặp

Hình 3.7 Giá trị tuyệt đối của hàm mất mát tại mỗi vòng lặp

Hình 3.8 Kết quả huấn luyện tổng thể

DANH MỤC BẢNG

Trang 6

LỜI MỞ ĐẦU

Deep Learning là một thuật toán dựa trên một số ý tưởng từ não bộ tới việc tiếp thu nhiều tầng biểu đạt, cả cụ thể lẫn trừu tượng, qua đó làm rõ ý nghĩa của các từ loại dữliệu Deep Learning được ứng dụng trong nhận diện ảnh, nhận diện giọng nói, xử lý ngônngữ tự nhiên

Hiện nay rất nhiều các bài toán nhận dạng sử dụng deep learning để giải quyết do deep learning có thể giải quyết các bài toán với số lượng lớn, kích thước đầu vào lớn với hiệu năng cũng như độ chính xác vượt trội so với các phương pháp phân lớp truyền thống

Convolution Neural Network (CNNs – Mạng nơ-ron tích chập) 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ốngthông minh với độ chính xác cao như hiện nay Trong bài tiểu luận này, em đi vào nghiên cứu về mạng neural cũng như mạng Convolution của mô hình CNNs trong phân lớp ảnh,

và áp dụng trong việc xây dựng hệ thống nhận dạng chữ viết tay tiếng Việt

Trong bài tiểu luận này em sẽ xây dựng mô hình mạng nơ-ron tích chập với việc

sử dụng nhiều lớp khác nhau của mạng để trích chọn tự động được các đặc trưng tốt nhất trong ảnh Đồng thời, cũng kết hợp giữa mạng nơ-ron tích chập và Multi-layer Perceptronnhằm cải thiện hiệu suất của mô hình

Nhận dạng chữ viết tay là bài toán được quan tâm rất nhiều vì nó là một trong các yêu cầu trong nhiều ứng dụng thực tế Các ứng dụng của nhận dạng chữ viết tay đã và đang được ứng dụng vào đời sống như phục vụ cho công việc tựu động hóa đọc tài liệu, tăng tốc độ và hiệu quả nhập thông tin vào máy tính Nhận dạng chữ viết tay có thể phục

vụ cho các ứng dụng đọc và xử lý các chứng từ, hóa đơn, phiếu ghi, bản viết tay chương trình, …

Hiện nay, đã có một số đề tài nghiên cứu nhận dạng chữ viết tay sử dụng các mô hình như: K láng giềng gần nhất (K-Nearest Neighbor - KNN), máy hỗ trợ vec-tơ (SuportVector Machine - SVM), mô hình Markov ẩn (Hidden Markov Model-HMM)… Tuy nhiên, các mô hình này cho kết quả nhận dạng không cao, mất nhiều thời gian cho việc trích rút đặc trưng ảnh Vì vậy, trong nghiên cứu này chúng tôi sẽ xây dựng một mô hình mới để có thể trích rút tự động các đặc trưng trong ảnh và mô hình mới này cũng cho kết quả tốt hơn các mô hình trước đó

Trang 7

CHƯƠNG I: TỔNG QUAN TÀI LIỆU 1.1 Giới thiệu.

Bài toán nhận dạng chữ viết tay được ứng dụng rất nhiều trong thực tế, được tích hợp vào hệ thống nhận dạng form tự động, tích hợp trong các máy PDA có màn hình cảmứng, nhận dạng ký tự… Do có nhiều ứng dụng quan trọng như vậy nên từ lâu bài toán nhận dạng chữ viết tay đã thu hút sự quan tâm của nhiều nhà nghiên cứu, Nghiên cứu củaNorhidayu và các tác giả sử dụng thuật toán phân loại KNN cho kết quả phân loại cao nhất là 99,26% Kết quả thục nghiệm cho thấy phương pháp LBP có thể nhận dạng ký tự chữ số viết tay trên bộ dữ liệu MNIST với độ chính xác 89,81% và trên dữ liệu C1 với độchính xác là 70,91%

Từ những nhận định ở trên em sẽ thử áp dụng mạng convolution neuron network đểthục hiện bài toán nhận dạng chữ viết tay Nhận dạng ký tự viết tay được phân ra làm hai loại: nhận dạng ký tự viết tay online (trực tuyến) và nhận dạng ký tự viết tay offline (ngoại tuyến)

Nhận dạng ký tự viết tay online được thực hiện trên cơ sở lưu lại các thông tin về nét chữ như thứ tự nét viết, hướng và tốc độ của nét viết trong quá trình nó đang viết Đây chính là cơ sở để máy tính nhận diện được các chữ cái, do đó việc nhận dạng không gặp quá nhiều khó khăn Một trong những sản phẩm nhận dạng chữ viết tay trực tuyến tiêu biểu nhất là hệ thống nhận dạng chữ viết tay rời rạc trực tuyến trên một trạm làm việc IBM do H.S.M.Beigi, C.C.Tapert, M.Ukeison và C.G.Wolf ở phòng thực hành Waston IBM cài đặt[1] Ngược lại đối với nhận dạng ký tự viết tay offline, dữ liệu đầu vào là ảnh văn bản được quét vào nên việc nhận dạng có độ khó cao hơn nhiều so với nhận dạng ký tự viết tay online Do dữ liệu đầu vào là ảnh văn bản nên nhận dạng ký tự viết tay offline và nhận dạng chữ in còn được gọi chung là nhận diện ký tự quang học (tiếng Anh: Optical Character Recognition, viết tắt là OCR)

1.1.1 Tổng quan về nhận diện ký tự quang học

Nhận dạng ký tự quang học là loại phần mềm máy tính được tạo ra để chuyển các hình ảnh của chữ viết tay hoặc chữ đánh máy (thường được quét bằng máy scanner) thành các văn bản tài liệu OCR được hình thành từ một lĩnh vực nghiên cứu về nhận dạng mẫu, trí tuệ nhận tạo và machine vision Mặc dù công việc nghiên cứu học thuật vẫntiếp tục, một phần công việc của OCR đã chuyển sang ứng dụng trong thực tế với các kỹ thuật đã được chứng minh

Nhận dạng ký tự quang học (dùng các kỹ thuật quang học chẳng hạn như gương và ống kính) và nhận dạng ký tự số (sử dụng máy quét và các thuật toán máy tính) lúc đầu được xem xét như hai lĩnh vực khác nhau Bởi vì chỉ có rất ít các ứng dụng tồn tại với các

kỹ thuật quang học thực sự, bởi vậy thuật ngữ Nhận dạng ký tự quang học được mở rộng

và bao gồm luôn ý nghĩa nhận dạng ký tự số

Đầu tiên hệ thống nhận dạng yêu cầu phải được huấn luyện với các mẫu của các ký

tự cụ thể Các hệ thống "thông minh" với độ chính xác nhận dạng cao đối với hầu hết các

Trang 8

phông chữ hiện nay đã trở nên phổ biến Một số hệ thống còn có khả năng tái tạo lại các định dạng của tài liệu gần giống với bản gốc bao gồm: hình ảnh, các cột, bảng biểu, các thành phần không phải là văn bản.

Hiện nay, với chữ Việt, phần mềm nhận dạng chữ Việt in VnDOCR 4.0 có khả năngnhận dạng trực tiếp các loại tài liệu được quét qua máy quét, không cần lưu trữ dưới dạngtệp ảnh trung gian Các trang tài liệu có thể được quét và lưu trữ dưới dạng tệp tin nhiều trang Kết quả nhận dạng được lưu trữ sang định dạng của Microsoft Word, Excel phục

vụ rất tốt nhu cầu số hóa dữ liệu

1.2 Phạm vi nghiên cứu.

Đầu vào là ảnh chụp từ các thiết bị kỹ thuật số chứa các ký tự viết tay được viết trên giấy, có thể có nhiễu vạch, nhiễu đốm, tuy nhiên không chứa các vật thể phức tạp khác như cây cối, xe cộ, con người vì sẽ làm ảnh hưởng đến quá trình phát hiện ký tự

Các ký tự viết tay có thể nhận diện được bao gồm 62 ký tự: 26 ký tự latinh viết hoa (A-Z), 26 ký tự latinh viết thường (a-z), 10 ký tự số (0-9)

1.3 Khái quát về xử lý ảnh.

1.3.1 Một số khái niệm cơ bản

Con người thu nhận thông tin qua các giác quan, trong đó thị giác đóng vai trò quan trọng nhất Những năm trở lại đây với sự phát triển của phần cứng máy tính, xử lý ảnh và đồ hoạ đó phát triển một cách mạnh mẽ và có nhiều ứng dụng trong cuộc sống

Xử lý ảnh và đồ hoạ đóng một vai trò quan trọng trong tương tác người máy Quá trình

xử lý ảnh được xem như là quá trình thao tác ảnh đầu vào nhằm cho ra kết quả mong muốn Kết quả đầu ra của một quá trình xử lý ảnh có thể là một ảnh “tốt hơn” hoặc một kết luận

Hình 1.1 Quá trình xử lý ảnh

Ảnh có thể xem là tập hợp các điểm ảnh và mỗi điểm ảnh được xem như là đặc trưng cường độ sáng hay một dấu hiệu nào đó tại một vị trí nào đó của đối tượng trong không gian và nó có thể xem như một hàm n biến P(c1, c2, , cn) Do đó, ảnh trong xử lý ảnh cóthể xem như ảnh n chiều Sơ đồ tổng quát của một hệ thống xử lý ảnh:

Ảnh “tốt hơn”

Kết luận

Trang 9

Hình 1.2 Các bước cơ bản trong một hệ thống xử lý ảnh

Đặc điểm biên và đường biên: Đặc trưng cho đường biên của đối tượng và do vậy

rất hữu ích trong việc trích trọn các thuộc tính bất biến được dùng khi nhận dạng đối tượng Các đặc điểm này có thể được trích chọn nhờ toán tử gradient, toán tử la bàn, toán

tử Laplace, toán tử “chéo không” (zero crossing) v.v

Việc trích chọn hiệu quả các đặc điểm giúp cho việc nhận dạng các đối tượng ảnh chính xác, với tốc độ tính toán cao và dung lượng nhớ lưu trữ giảm xuống

c Nhận dạng

Nhận dạng tự động (automatic recognition), mô tả đối tượng, phân loại và phân nhóm

Trang 10

ngành khoa học khác nhau Tuy nhiên, một câu hỏi đặt ra là: mẫu (pattern) là gì?

Watanabe, một trong những người đi đầu trong lĩnh vực này đã định nghĩa: “Ngược lại với hỗn loạn (chaos), mẫu là một thực thể (entity), được xác định một cách ang áng (vaguely defined) và có thể gán cho nó một tên gọi nào đó” Ví dụ mẫu có thể là ảnh của vân tay, ảnh của một vật nào đó được chụp, một chữ viết, khuôn mặt người hoặc một ký

đồ tín hiệu tiếng nói Khi biết một mẫu nào đó, để nhận dạng hoặc phân loại mẫu đó có thể:

Hoặc phân loại có mẫu (supervised classification), chẳng hạn phân tích phân biệt

(discriminant analyis), trong đó mẫu đầu vào được định danh như một thành phần của một lớp đã xác định

Hoặc phân loại không có mẫu (unsupervised classification hay clustering) trong đó

các mẫu được gán vào các lớp khác nhau dựa trên một tiêu chuẩn đồng dạng nào đó Các lớp này cho đến thời điểm phân loại vẫn chưa biết hay chưa được định danh

Hệ thống nhận dạng tự động bao gồm ba khâu tương ứng với ba giai đoạn chủ yếu sauđây:

 Thu nhận dữ liệu và tiền xử lý

 Biểu diễn dữ liệu

 Nhận dạng, ra quyết định

Bốn cách tiếp cận khác nhau trong lý thuyết nhận dạng là:

 Đối sánh mẫu dựa trên các đặc trưng được trích chọn

 Phân loại thống kê

 Đối sánh cấu trúc

 Phân loại dựa trên mạng nơ-ron nhân tạo

Trong các ứng dụng rõ ràng là không thể chỉ dùng có một cách tiếp cận đơn lẻ để phân loại “tối ưu” do vậy cần sử dụng cùng một lúc nhiều phương pháp và cách tiếp cận khác nhau Do vậy, các phương thức phân loại tổ hợp hay được sử dụng khi nhận dạng vànay đã có những kết quả có triển vọng dựa trên thiết kế các hệ thống lai (hybrid system) bao gồm nhiều mô hình kết hợp

Việc giải quyết bài toán nhận dạng trong những ứng dụng mới, nảy sinh trong cuộc sống không chỉ tạo ra những thách thức về thuật giải, mà còn đặt ra những yêu cầu về tốc

độ tính toán Đặc điểm chung của tất cả những ứng dụng đó là những đặc điểm đặc trưng cần thiết thường là nhiều, không thể do chuyên gia đề xuất, mà phải được trích chọn dựa trên các thủ tục phân tích dữ liệu

d Nén ảnh

Nhằm giảm thiểu không gian lưu trữ Thường được tiến hành theo cả hai cách khuynhhướng là nén có bảo toàn và không bảo toàn thông tin Nén không bảo toàn thì thường có khả năng nén cao hơn nhưng khả năng phục hồi thì kém hơn Trên cơ sở hai khuynh hướng, có 4 cách tiếp cận cơ bản trong nén ảnh:

Trang 11

 Nén ảnh thống kê: Kỹ thuật nén này dựa vào việc thống kê tần xuất xuất hiện của giá trị các điểm ảnh, trên cơ sở đó mà có chiến lược mã hóa thích hợp Một

ví dụ điển hình cho kỹ thuật mã hóa này là *.TIF

 Nén ảnh không gian: Kỹ thuật này dựa vào vị trí không gian của các điểm ảnh đểtiến hành mã hóa Kỹ thuật lợi dụng sự giống nhau của các điểm ảnh trong các vùng gần nhau Ví dụ cho kỹ thuật này là mã nén *.PCX

 Nén ảnh sử dụng phép biến đổi: Đây là kỹ thuật tiếp cận theo hướng nén không bảo toàn và do vậy, kỹ thuật thướng nến hiệu quả hơn *.JPG chính là tiếp cận theo kỹ thuật nén này

 Nén ảnh Fractal: Sử dụng tính chất Fractal của các đối tượng ảnh, thể hiện sự lặplại của các chi tiết Kỹ thuật nén sẽ tính toán để chỉ cần lưu trữ phần gốc ảnh và quy luật sinh ra ảnh theo nguyên lý Fractal

1.3.2.2 Các hình thái của ảnh

a Chuyển ảnh màu thành ảnh xám

Đơn vị tế bào của ảnh số là pixel Tùy theo mỗi định dạng là ảnh màu hay ảnh xám

mà từng pixel có thông số khác nhau Đối với ảnh màu từng pixel sẽ mang thông tin của

ba màu cơ bản tạo ra bản màu khả kiến là Đỏ (R), Xanh lá (G) và Xanh biển (B) [Thomas1892] Trong mỗi pixel của ảnh màu, ba màu cơ bản R, G và B được bố trí sát nhau và cócường độ sáng khác nhau Thông thường, mỗi màu cơ bản được biểu diễn bằng tám bit tương ứng 256 mức độ màu khác nhau Như vậy mỗi pixel chúng ta sẽ có 28x3=224 màu (khoảng 16.78 triệu màu) Đối với ảnh xám, thông thường mỗi pixel mang thông tin của

256 mức xám (tương ứng với tám bit) như vậy ảnh xám hoàn toàn có thể tái hiện đầy đủ cấu trúc của một ảnh màu tương ứng thông qua tám mặt phẳng bit theo độ xám

b Lược đồ xám của ảnh (Histogram).

Lược đồ xám của một ảnh số có các mức xám trong khoảng là một hàm rời rạc Trong đó nk là số pixel có mức xám thứ , là tổng số pixel trong ảnh và Do đó cho một xấp xỉ xác suất xảy ra mức xám Vẽ hàm này với tất cả các giá trị của k sẽ biểu diễn khái quát sự xuất hiện các mức xám của một ảnh Chúng ta cũng có thể thề hiện lược đồ mức xám của ảnh thông qua tần suất xuấthiện mỗi mức xám qua hệ tọa độ vuông góc Trong đó, trục hoành biểu diễn số mức xám từ 0 đến N (số bit của ảnh xám) Trục tung biểu diễn số pixel của mỗi mức xám

1.3.2.3 Một số ứng dụng trong xử lý ảnh

Xử lý ảnh có ứng dụng rất rộng và gần như tất cả các lĩnh vực kỹ thuật đều bị ảnh hưởng bởi DIP, sau đây là một số các ứng dụng chính của DIP.Xử lý hình ảnh không chỉ giới hạn ở chổ chỉ điều chỉnh độ phân giải hình ảnh, tăng độ sáng của hình ảnh vv Nó có rất rất nhiều ứng dụng

Các ứng dụng cơ bản:

Trang 12

- Ứng dụng này tương tự như photoshop: từ một hình ảnh được chụp từ máy ảnh,ta

có thể chỉnh sửa, xử lý để làm ảnh đẹp hơn hoặc phù hợp nhu cầu người dung như: làm

mờ, lấy biên, chỉnh độ nét, chỉnh độ phân giải, phục hồi và nhận dạng ảnh…

Ví dụ phổ biến:

Trang 13

b,Lĩnh vực y tế

- Các ứng dụng phổ biến của DIP trong lĩnh vực y tế là:

· Gamma ray imaging

Trang 14

d, Truyền và mã hóa:

- Lĩnh vực này không cần giải thích nhiều chắc các bạn cũng hiểu được Mình sẽ cho một

ví dụ Ngày nay con người sử dụng internet để truyền nhận các ảnh, video một cáchnhanh chóng Hình ảnh khi ta chụp sẽ được mã hóa và truyền theo internet Rất nhanh sauvài giây là người bạn có thể nhận được một bức ảnh

e,Thị giác máy tính và robot

- Hiện tại công nghệ robot đang phát triển nhanh chóng, và càng ngày càng giống conngười hơn Thị giác của máy tính cũng là một phần quan trọng Làm thế nào để robot cóthể nhìn mọi thứ, tránh vật cảng, nhận dạng các vật ? Đó chính là nhờ một hệ thống quátrình xử lý ảnh phức tạp

f,Phát hiện vật cản:

- Phát hiện vật cản cũng là một lĩnh vực mới và được thực hiện bởi xử lý ảnh: tính toánkhoảng cách từ robot tới vật cản bằng cách xác định được các đối tượng khác nhau tronghình ảnh sau đó xử lý và tính toán chúng

g, Công nghệ nhận dạng

- Xử lý ảnh dung để xác định, nhận dạng các đối tượng, các mối nguy hiểm, nhận dạngvân tay, khuôn mặt, hoặc các loại bệnh trong lĩnh vự y tế

Trang 15

1.4 Hệ thống nhận diện ký tự viết tay.

Hệ thống nhận diện ký tự viết tay là một hệ thống nhận vào là một ảnh hoặc một đoạnvideo (một chuỗi các ảnh) Qua xử lý tính toán hệ thống xác định được vị trí ký tự (nếucó) và xác định được đó là ký tự nào

1.4.1 Những khó khan của bài toán

1 Nét chữ:

Nét chữ của mỗi con người là khác nhau, chưa kể các biến đổi đa dạng trong cách viếtcủa từng người, tuỳ thời điểm, tâm trạng,v.v… mà nét chữ của mỗi người lại khác nhau(chữ viết của 2 người tại 2 thời điểm khác nhau có thể khác nhau hoàn toàn) vì vậy, với

dữ liệu thu thập được dù có phong phú đến mấy thì tỉ lệ nhận diện sai vẫn nghiễm nhiên

có khả năng xảy ra

2 Góc chụp

Ảnh chụp văn bản thông thường có thể thay đổi rất nhiều bởi vì góc chụp giữa camera

và mặt giấy Chẳng hạn như chụp nghiêng qua trái, qua phải, lên trên hoặc xuống dướimột góc làm chữ bị nghiêng, méo so với bình thường và chúng trở thành một khó khắnlớn trong bài toán nhận diện ký tự viết tay

3 Sự xuất hiện của nhiễu

Các loại nhiễu như nhiễu muối tiêu, nhiễu vạch trước đây thường xuyên xảy ra dochất lượng camera chụp ảnh không tốt

4 Sự che khuất bởi các vật thể khác

Sự che khuất của các vật thể như bút, tay, thẻ,v.v… có thể làm che khuất một phầnhoặc hoàn toàn ký tự cần nhận diện Các hệ thống thông minh có thể nhận diện dù ký tự

đã bị che khuất một phần Tuy nhiên tỷ lệ phát hiện và nhận dạng đúng ở trường hợp nàycòn tương đối thấp và vẫn còn là một thách thức với các nhà nghiên cứu

5 Điều kiện chụp ảnh

Ảnh bị thiếu sáng hoặc quá sáng khi chụp làm ảnh hưởng rất lớn đến quá trình nhậndạng khiến ký tự có thể không được phát hiện hoặc bị nhận diện nhầm thành một ký tựkhác

6 Nền ảnh phức tạp

Các màu nền của chữ quá phức tạp, chứa quá nhiều chi tiết khác nhau có thể ảnhhưởng trực tiếp đến quá trình phát hiện ký tự Đôi khi khung cảnh xung quanh có thể gâynhầm lẫn với các ký tự

7 Màu sắc chữ

Màu chữ quá nhạt hoặc quá gần màu với màu nền (ví dụ: nền màu đen và mực màuxanh) có thể khiến hệ thống không nhận diện được chữ vì khác biệt giữa màu chữ và màunền là quá nhỏ

1.4.2 Các thành phần của hệ thống

Một hệ thống nhận diện ký tự viết tay nói chung cũng như một hệ nhận diện đốitượng nói riêng về cơ bản thường bao gồm 3 bước: Tiền xử lý ảnh, phát hiện đối tượng,

Trang 16

nhận dạng đối tượng Đôi khi ta có thể gộp bước tiền xử lý bên trong bước phát hiện đốitượng.

2.1.1.1 Nhị phân hóa

Là quá trình biến đổi 1 ảnh xám thành ảnh nhị phân

 Gọi giá trị cường độ sáng tại 1 điểm ảnh là I(x,y)

 INP(x,y) là cường độ sáng của điểm ảnh trên ảnh nhị phân

 (Với 0 < x < image.width) và (0 < y < image.height)

Để biến đổi ảnh xám thành ảnh nhị phân So sánh giá trị cường độ sáng của điểm ảnhvới 1 ngưỡng nhị phân T

 Nếu I(x,y) > T thì INP(x, y) = 0 (0)

 Nếu I(x,y) > T thì INP(x, y) = 255 (1)

Chú ý

 Có thể chọn giá trị T từ 0 đến 255, nhưng thông thường nhiều người hay chọn

1 giá trị đó là 128 tức là giá trị trung bình của max(255) và min(0) của cường

độ sáng (Intensity) của điểm ảnh

 Dễ dàng nhận thấy với mỗi T thì có 1 ảnh nhị phân khác nhau (Khác nhau ởđây là cường độ sáng của các tấm ảnh nhị phân với mỗi giá trị T)

Có 1 kỹ thuật gọi là nhị phân hóa ngưỡng động giúp thu được ảnh nhị phân mà khôngquan tâm tới cường độ sáng

Trang 17

Hình 2.1 Nhị phân hoá ảnh

2.1.1.2 Phân ngưỡng ảnh với thuật toán Otsu

2.1.1.2.1 Khái niệm phân ngưỡng.

Nhằm mục đích nhị phân hoá ảnh, phân ngưỡng là tách hình ảnh của một vùng rakhỏi ảnh nền dựa trên một ngưỡng xác định

2.1.1.2.2 Lược đồ xám Histogram

Là một đồ thị dạng thanh biểu diễn tần suất xuất hiện các mức xám của ảnh Trong đótrục hoành biểu diễn giá trị mức xám của ảnh có giá trị từ 0 đến 255, trục tung biểu diễntần suất xuất hiện mức xám của ảnh

 rk là mức xám của ảnh f(x,y)

 nk là số điểm ảnh (pixels) có giá trị rk

Biểu đồ mức xám chưa chuẩn hóa (unnormalized histogram) của f được định

nghĩa như sau: h(rk) = nk với k = 0, 1, , L-1,L là số mức xám

 Biểu đồ chuẩn hoá (normalized histogram):

với M, N là chiều dài và chiều rộng của f hay là của ảnh

Trang 18

Ta lần lượt có ảnh và histogram tương ứng với các ảnh drank, light, low-contrastvàhighcontrast

Hình 2.2 Ảnh và Histogram tương ứng của ảnh

Ta có nhận xét

 Với ảnh dark thì histogram có các cột tập trung vào bên trái tương ứng với màu tối

 Với ảnh light thì histogram có tập trung vào bên phải chứa các pixel trắng

 Với ảnh độ tương phản thấp (low-contrast) thì histogram có các cột tập trung xítnhau và ở giữa

 Với ảnh độ tương phản cao (high-contrast) thì histogram san đều với các giá trị

2.1.1.2.3 Thuật toán Otsu

Otsu được lấy tên theo tên tác giả của phương pháp này Nobuyuki Otsu đã giới

thiệu về kĩ thuật này trong tập báo của IEEE Transactions on Systems, Man, and Cybernetics - Hiệp hội hệ thống, con người và điều khiển mạng trang 62-

66 của IEEE (Institute of Electrical and Electronics Engineers - Viện kỹ sư Điện và Điện

Tử)

 Đầu tiên sử dụng lược đồ Histogram biểu diễn tần suất xuất hiện mức xám:

trong đó: là số lượng điểm ảnh L: 1,2,3,…256.;

 Chọn một ngưỡng = , để phân ảnh đầu vào thành 2 lớp (tập hợp các điểm ảnh có giá trị ) và (tập hợp các điểm ảnh có giá trị lớn

Trang 19

hơn ) Tỉ lệ lớp với số lượng điểm ảnh k với tổng số lượng điểm ảnh được ký

hiệu , tương tự ký hiệu là

Sau đó ta tính giá trị trung bình của lớp :

Theo Otsu, ta sẽ tính ngưỡng k* mà giá trị tại đó sự chênh lệch giữa hai đoạn (màu nền

và màu ký tự) đạt giá trị cực đại, ký hiệu , được tính:

Trong đó là phương sai hai lớp và Ta có:

Từ công thức trên suy ra:

Trong đó: là giá trị trung bình của ảnh

hoặc

là giá trị trung bình đến ngưỡng k Với

Trang 20

 Nếu có nhiều giá trị lớn nhất bằng nhau, ta sẽ chọn k có giá trị lớn nhất làmngưỡng k*, sau đó ta thực hiện nhị phân biển số theo ngưỡng.

Trong đó: là ảnh đầu ra

là ảnh đầu vào

Như vậy mục đích cuối cùng của giải thuật là phân ngưỡng một cách thích hợp để saocho sau khi phân ngưỡng, các vật thể không phù hợp bị loại bỏ, tránh sai sót cho quátrình nhận dạng

2.1.1.3 Lọc ảnh

Lọc ảnh (làm mịn ảnh, làm mượt ảnh) là một bước rất quan trọng trong xử lý ảnh Lọcảnh thực tế có rất nhiều tác dụng như loại bỏ nhiễu, tìm biên đối tượng Dưới đây em xintrình bày một vài phương pháp lọc phổ biến Trong phạm vi nghiên cứu của đồ ánphương pháp được lựa chọn

Nguyên tắc chung của các phương pháp lọc là cho ma trận ảnh nhân với một ma trậnlọc (Kernel) Ma trận lọc lọc (Kernel) còn có thể được gọi là cửa số chập (trong phépnhân chập), cửa sổ lọc, mặt nạ,… Trong bài viết này tôi sử dụng thuật ngữ ma trận lọc(Kernel)

Trang 21

Hình 2.3 Minh hoạ việc lọc ảnh

Việc nhân ảnh với ma trận lọc giống như việc trượt ma trận lọc theo hàng trên ảnh vànhân với từng vùng của ảnh, cộng các kết quả lại tạo thành kết quả của điểm ảnh trungtâm Dưới đây là minh hoạ cho việc nhân ma trận lọc với ảnh đầu vào

Hình 2.4.Minh hoạ kết quả của việc nhân ma trận

Ma trận đầu vào I được nhân với ma trận lọc (phần xám ở hình trái) để tạo thành matrận đầu ra O

Trên thực tế, chúng ta sẽ thấy có 2 phép lọc ảnh là tương quan (correlation) và tích

Trang 22

vùng của ảnh như trên Tuy nhiên với phép tích chập, ma trận lọc sẽ được xoay 180 độ(theo cả chiều ngang và dọc) trước khi thực hiện nhân 2 phép toán này là tương đươngkhi ma trận lọc đối xứng.

Với mỗi phép lọc ta có những ma trận lọc (Kernel) khác nhau, không có một quy định

cụ thể nào cho việc xác định M Kích thước ma trận M là một số lẻ Ví dụ: 3x3, 5x5.Khi nhân các phần tử tương ứng với nhau (giữa pixel, các điểm lân cận – các thànhphần trong kernel), đối với các phần tử ở cạnh thì sẽ có một số pixel bị khuyết, lúc này,

có nhiều cách giải quyết như bỏ qua, chèn thêm một (một số) hàng, cột mang giá trị 0hoặc bằng giá trị gần nhất, hoặc tạo một đối xứng gương ở cạnh ảnh

Tổng Tpt các phẩn tử trong ma trận M thường là 1.

: Ảnh sau khi thực hiện xong phép lọc số ảnh ( ) có độ sáng lớn hơn so vớiảnh ban đầu (Isrc); ** : **Ảnh sau khi thực hiện xong phép lọc số ảnh có

độ sáng nhỏ hơn so với ảnh ban đầu

a Lọc trung bình(Normalized Box Filter)

Định nghĩa :

Cho dãy x1, x2…, xn khi đó trung bình của dãy ký hiệu AV({xn}) được định nghĩa:

Giả sử ta có ảnh I, điểm ảnh P, cửa sổ W(P) và ngưỡng θ Khi đó kỹ thuật lọc trungbình phụ thuộc không gian bao gồm các bước cơ bản sau:

+ Bước 1: Tìm trung bình

{I(q)| q ∈ W(P)} → AV(P) + Bước 2: Gán giá trị

Trang 23

+ Bước 2: Gán giá trị

c Lọc Gauss

Bộ lọc Gauss được cho là bộ lọc hữu ích nhất, được thực hiện bằng cách nhân chập

ảnh đầu vào với một ma trận lọc Gauss sau đó cộng chúng lại để tạo thành ảnh đầu ra

Ý tưởng chung là giá trị mỗi điểm ảnh sẽ phụ thuộc nhiều vào các điểm ảnh ở gần hơn

là các điểm ảnh ở xa Trọng số của sự phụ thuộc được lấy theo hàm Gauss (cũng được sửdụng trong quy luật phân phối chuẩn)

Dưới đây là biểu diễn đồ thị của phép lọc Gauss:

Hình 2.5 Minh hoạ phép lọc Gauss

Giả sử ảnh là một chiều Điểm ảnh ở trung tâm sẽ có trọng số lớn nhất Các điểm ảnh ởcàng xa trung tâm sẽ có trọng số giảm dần khi khoảng cách từ chúng tới điểm trung tâmtăng lên Như vậy điểm càng gần trung tâm sẽ càng đóng góp nhiều hơn vào giá trị điểmtrung tâm

Chú ý: Trên thực tế, việc lọc ảnh dựa trên hàm Gauss 2 chiều (ngang và dọc) Phân

phối chuẩn 2 chiều có thể biểu diễn dưới dạng:

Trong đó là trung bình (đỉnh), là phương sai của biến số và

Tham số quyết định tác dụng của bộ lọc Gauss lên ảnh Độ lớn của ma trận lọc (kernel) cần được lựa chọn cho đủ rộng.

2.1.1.4 Làm trơn biên chữ

Trang 24

Đôi khi do chất lượng quét quá xấu, các đường bên của chữ không còn giữ được dángđiệu trơn tru ban đầu mà hình thành các đường răng cưa giả tạo Trong các trường hợpnày,phải dùng các thuật toán làm trơn biên để khắc phục

Hình 2.6 (a) Ảnh gốc, (b) Ảnh sau khi được làm trơn biên.

2.1.1.5 Làm mảnh chữ

Đây là một bước quan trọng nhằm phát hiện khung xương của ký tự bằng cách loại

bỏ dần các điểm bên ngoài của các nét Tuy nhiên, trong quá trình làm mảnh chữ rất nhạycảm với việc khử nhiễu Nếu khử nhiễu ngay sau khi co ảnh Thuật toán có thể hiểu nhầm

ký tự là nhiễu vì chúng đã bị co lại rất mỏng ta cũng có thể làm mảnh chữ nhằm loại bỏcác nhiễu vạch Do khi co vật thể lại thì các nhiễu vạch và nhiễu đốm sẽ biến mất

Hình 2.7 Làm mảnh chữ

2.1.1.6 Làm đầy chữ

Ngược lại với quá trình làm mảnh chữ ta có quá trình làm đầy chữ thực chất là phép

dãn vật thể Sau khi làm mảnh chữ để loại bỏ các nhiễu vạch, các nét chữ đầu ra hoàntoàn có thể bị đứt nét hoặc vốn dĩ nó đã bị đứt tự nhiên khi người dùng nó Ta nên sửdụng các thuật toán dãn vật thể để làm đầy chữ Giúp ký tự đầu ra được liền nét và tránhsai sót khi nhận dạng

2.1.2 Phát hiện ký tự

Bài toán phát hiện ký tự khá giống với bài toán phát hiện đối tượng trong ảnh Đối

với bài toán phát hiện đối tượng trong ảnh có nhiều phương pháp phát hiện vật thể có thể

kể đến như: Sử dụng các mạng CNN đề xuất khu vực (RPN – Region Proposal Network)như R-CNN(Region with CNN feature), Fast R-CNN, Faster R-CNN, Sử dụng máy dò đađiểm (SSD – Single Shot MultiBox Detector), Yolo,v.v… đặc điểm chung của các

Trang 25

phương pháp trên là sử dụng mạng nơron trong việc phát hiện đối tượng Tuy nhiên cácmạng này tương đối phức tạp và làm tăng đáng kể chi phí tính toán, đối với bài toán nhậndiện ký tự viết tay các ký tự được ghi trên giấy tách biệt hoàn toàn với nền nên ta khôngnhất thiết phải sử dụng mạng nơron trong quá trình phát hiện ký tự Ở đây em xin đề xuấtmột vài phương pháp phát hiện đối tượng thông thường cho hiệu quả cao và tốc độ tínhtoán nhanh có thể kể đến như: Phương pháp Canny, phương pháp Gradient, kỹ thuậtPrewitt, kỹ thuật Sobel, kỹ thuật la bàn, kỹ thuật Laplace,v.v… Tuy nhiên trong giới hạnphạm vi đồ án em xin sử dụng phương pháp phát hiện biên Canny Một số hàm tìm biênvật thể trong các thư viện học máy có sử dụng phương pháp này và cách cài đặt khá đơngiản ví dụ: hàm findContours trong thư viện OpenCV.

Phương pháp phát hiện ký tự ở đây dựa trên cấu trúc liên kết (Cấu trúc topo Topology) của ảnh Để phát hiện bằng phương pháp này trước hết ảnh cần phải đượcchuyển sang đa mức xám hoặc chuyển về ảnh nhị phân Giả sử các thao tác tiền xử lý kểtrên đã giải quyết được hết các nhiễu và cho ta một ảnh đầu ra là ảnh nhị phân chỉ chứacác ký tự Ta có thể sử dụng phương pháp phân tích dựa trên cấu trúc liên kết giữa cácpixel ảnh để phát hiện toạ độ và kích thước của từng ký tự Tổng quan thuật toán pháthiện biên của ký tự như sau:

-Hình 2.8 Phát hiện ký tự trong ảnh

Ngoài phát hiện biên bằng phương pháp Canny chúng ta có khá nhiều phương phápphát hiện biên khác có thể kể đến như: Phương pháp Gradient, kỹ thuật Prewitt, kỹ thuậtSobel, kỹ thuật la bàn, kỹ thuật Laplace,v.v… Tuy nhiên trong giới hạn phạm vi đồ án emxin sử dụng phương pháp phát hiện biên Canny Một số hàm tìm biên vật thể trong cácthư viện học máy có sử dụng phương pháp này ví dụ: hàm findContours trong thư việnOpenCV

2.1.2.1 Phát hiện biên canny

Trong hình ảnh, thường tồn tại các thành phần như: vùng trơn, góc / cạnh và nhiễu.

Cạnh trong ảnh mang đặc trưng quan trọng, thường là thuộc đối tượng trong ảnh (object)

Do đó, để phát hiện cạnh trong ảnh, giải thuật Canny là một trong những giải thuật phổbiến / nổi tiếng nhất trong Xử lý ảnh

Giải thuật phát hiện cạnh Canny gồm 4 bước chính sau:

 Giảm nhiễu : Làm mờ ảnh, giảm nhiễu dùng bộ lọc Gaussian kích thước 5x5 Kích

thước 5x5 thường hoạt động tốt cho giải thuật Canny Dĩ nhiên bạn cũng có thể thay

Ảnh đầu vào(Đã qua

tiền xử lý)

Phát hiện biên Canny

Phát hiện vị trí, kích thước

Trang 26

mờ ảnh (blur).

 Tính Gradient và hướng gradient : ta dùng bộ lọc Sobel X và Sobel Y (3x3) để tính

được ảnh đạo hàm và Sau đó, ta tiếp tục tính ảnh Gradient và góc củaGradient theo công thức Ảnh đạo hàm và là ma trận (ví dụ: 640x640), thì kếtquả tính ảnh đạo hàm Edge Gradient cũng là một ma trận (640x640), mỗi pixel trên

ma trận này thể hiện độ lớn của biến đổi mức sáng ở vị trí tương ứng trên ảnh gốc.Tương tự, ma trận Angle cũng có cùng kích thước (640x640), mỗi pixel trên Anglethể hiện góc, hay nói cách khác là hướng của cạnh Ví dụ dễ hiểu, nếu góc gradient là

0 độ, thì cạnh của ta trên ảnh sẽ là một đường thẳng đứng (tức tạo góc 90 độ so vớitrục hoành) (vuông góc hướng gradient) Khi tính toán, giá trị hướng gradient sẽ nằmtrong đoạn [-180, 180] độ, ta không giữ nguyên các góc này mà gom các giá trị này

về 4 bin đại diện cho 4 hướng: hướng ngang (0 độ), hướng chéo bên phải (45 độ),hướng dọc (90 độ) và hướng chéo trái (135 độ)

Edge_Gradient (G) =

Angel ( ) =

 Loại bỏ những điểm không cực đại : ( Non-maximum Suppression - NMS): loại bỏ

các pixel ở vị trí không phải cực đại toàn cục Ở bước này, ta dùng một filter 3x3 lầnlượt chạy qua các pixel trên ảnh gradient Trong quá trình lọc, ta xem xét xem độ lớngradient của pixel trung tâm có phải là cực đại (lớn nhất trong cục bộ - localmaximum) so với các gradient ở các pixel xung quanh Nếu là cực đại, ta sẽ ghi nhận

sẽ giữ pixel đó lại Còn nếu pixel tại đó không phải là cực đại lân cận, ta sẽ set độ lớngradient của nó về zero Ta chỉ so sánh pixel trung tâm với 2 pixel lân cận theo hướnggradient Ví dụ: nếu hướng gradient đang là 0 độ, ta sẽ so pixel trung tâm với pixelliền trái và liền phải nó Trường hợp khác nếu hướng gradient là 45 độ, ta sẽ so sánhvới 2 pixel hàng xóm là góc trên bên phải và góc dưới bên trái của pixel trung tâm.Tương tự cho 2 trường hợp hướng gradient còn lại Kết thúc bước này ta được mộtmặt nạ nhị phân Tham khảo hình dưới:

Trang 27

Hình 2.9 Tìm biên dựa trên điểm cực đại

 Lọc ngưỡng : ta sẽ xét các pixel dương trên mặt nạ nhị phân kết quả của bước trước.

Nếu giá trị gradient vượt ngưỡng max_val thì pixel đó chắc chắn là cạnh Các pixel có

độ lớn gradient nhỏ hơn ngưỡng min_val sẽ bị loại bỏ Còn các pixel nằm trongkhoảng 2 ngưỡng trên sẽ được xem xét rằng nó có nằm liên kề với những pixel đượccho là "chắc chắn là cạnh" hay không Nếu liền kề thì ta giữ, còn không liền kề bất cứpixel cạnh nào thì ta loại Sau bước này ta có thể áp dụng thêm bước hậu xử lý loại bỏnhiễu (tức những pixel cạnh rời rạc hay cạnh ngắn) nếu muốn

Hình 2.10 Minh hoạ về ngưỡng lọc

Sau khi thu được biên bằng phương pháp Canny Ta tiến hành nối 4 điểm dựa trên giátrị cực tiểu và cực đại của biên để thu được biên ảnh hình chữ nhật Đồng thời cắt ký tự

đó dựa trên biên để làm đầu vào cho việc nhận dạng

Trang 28

Hình 2.11 Một vài ký tự thu được sau khi tiến hành phát hiện biên

2.2 Hệ thống nhận diện ký tự.

2.2.1 Mạng nơ-ron và mạng nơ-ron lan truyền ngược

2.2.1.1 Giới thiệu về mạng nơ-ron.

Định nghĩa : Mạng nơron nhân tạo, Artificial Neural Network (ANN)

là một mô hình xử lý thông tin phỏng theo cách thức xử lý thông tincủa các hệ nơron sinh học Nó được tạo nên từ một số lượng lớncác phần tử (nơron) kết nối với nhau thông qua các liên kết (trọng sốliên kết) làm việc như một thể thống nhất để giải quyết một vấn đề cụthể nào đó Cấu trúc neural nhân tạo:

Hình 2.12 Cấu tạo một Neural

Các thành phần cơ bản của một nơron nhân tạo bao gồm:

• Tập các đầu vào: Là các tín hiệu vào (input signals) của nơron,các tín hiệu này thường được đưa vào dưới dạng một vector N chiều

• Tập các liên kết: Mỗi liên kết được thể hiện bởi một trọng số liênkết – Synaptic weight

• Bộ tổng (Summing function): Thường dùng để tính tổng

của tích các đầu vào với trọng số liên kết của nó

• Ngưỡng (còn gọi là một độ lệch - bias): Ngưỡng này thường đượcđưa vào như một thành phần của hàm truyền

Ngày đăng: 16/08/2021, 09:18

TỪ KHÓA LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w