Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 31

Optical Character Recognition

By Using Template Matching


(Alphabets, Numbers, Space)
THÀNH VIÊN NHÓM

Trần Hồng Quân


Trần Minh Anh
Vũ Quốc Kiên
Ngô Văn Huy
Đoàn Mạnh Hùng
NỘI DUNG
1. Preprocessing
TÓM TẮT
2. Gray scaling

3.Threshold Image
CÁC BƯỚC THỰC HIỆN
4. Remove Noise

GUIDE 5. Segmentation

6. Character
THỰC NGHIỆM Recognition

PHƯƠNG ÁN TƯƠNG LAI

TÀI LIỆU THAM KHẢO


TÓM TẮT

OCR là gì?
OCR là thuật ngữ được viết tắt bởi cụm từ Optical Character Recognition (dịch là:
nhận dạng ký tự quang học). Đây là ứng dụng công nghệ chuyên dùng để đọc text ở file
ảnh. Được biết đến là một công cụ scan kỹ thuật số chuyên nhận dạng các ký tự, chữ
viết tay, hay chữ đánh máy, công nghệ này chuyên dùng để truyền tải, nhập liệu dữ liệu.

Một số các trường mà các ứng dụng OCR đã được sử dụng chẳng hạn như trong
kinh doanh, ngân hàng, chính phủ, ngành du lịch và khách sạn. bên trong kinh doanh,
các ứng dụng OCR được sử dụng cho tự động nhập dữ liệu để nhập đơn hàng và theo
dõi thư mục tệp của tên và số. Bên cạnh đó, trong chính phủ, các ứng dụng OCR đã
được sử dụng để thanh toán tiện ích như thuế, nước, lệ phí, thẻ biểu quyết và hóa đơn
giấy phép.
TÓM TẮT
OCR using
Template Matching
Nhận dạng ký tự quang học bằng cách sử dụng Đối sánh Mẫu là một nguyên mẫu
hệ thống hữu ích để nhận ra ký tự hoặc bảng chữ cái bằng so sánh hai hình ảnh của Ký
tự. Các mục tiêu của nguyên mẫu hệ thống này là phát triển một nguyên mẫu cho Ký tự
quang học Hệ thống nhận dạng (OCR) và để triển khai thuật toán Đối sánh Mẫu trong
việc phát triển nguyên mẫu hệ thống.
Nguyên mẫu hệ thống này có phạm vi của riêng nó đang sử dụng Mẫu Đối sánh
như thuật toán áp dụng cho nhận dạng các ký tự, ký tự được kiểm tra là bảng chữ cái
(A - Z), số đếm (0-9) và dấu, ký hiệu..., sử dụng định dạng hình ảnh bitmap với kích
thước giống nhau và nhận ra bằng cách so sánh giữa hai hình ảnh.
TÓM TẮT
OCR using
Template Matching

Đối sánh mẫu là một trong những Nhận dạng Ký tự Quang học kỹ thuật. Đối sánh
mẫu là quá trình tìm vị trí của một hình ảnh phụ được gọi là mẫu bên trong hình ảnh.
Từng là một số các mẫu tương ứng được tìm thấy ở trung tâm của chúng được sử
dụng làm điểm tương ứng để xác định các thông số đăng ký.
Đối sánh mẫu liên  quan đến việc xác định những điểm tương đồng giữa một mẫu
đã cho và các cửa sổ có cùng kích thước trong một hình ảnh và xác định cửa sổ tạo ra
độ đo tương đương cao nhất. Nó hoạt động bằng cách so sánh các tính năng hình ảnh
có nguồn gốc của hình ảnh và mẫu cho mỗi loại có.
TÓM TẮT

Tóm tắt

Matlab 2016b là công cụ phần mềm được sử dụng trong việc phát triển hệ thống.
Hệ thống sử dụng các ảnh mẫu bằng phông chữ Arial có kích thước 42x24 có thể nhận
dạng được chữ cái (A-Z), số đếm (0-9) và dấu cách. Các ký tự đều phải đảm bảo chính
xác và đúng thứ tự.
CÁC BƯỚC THỰC HIỆN
Các bước để nhận biết Thuật toán so khớp mẫu
được triển khai các bước sau: 

Bước 1: Đầu tiên, hình ảnh ký tự từ chuỗi xác định


được chọn. 
Bước 2: Sau đó, hình ảnh được thay đổi tỉ lệ bằng với
kích thước của mẫu.
Bước 3: Sau khi thay đổi lại hình ảnh với kích thước
hình ảnh mẫu đầu (gốc), các chỉ số phù hợp được tính
toán. 
Bước 4: Sau đó, kết quả phù hợp cao nhất được tìm
thấy là được lưu trữ. Nếu hình ảnh không khớp lặp lại
bước thứ ba. 
Bước 5: Thành phần của kết quả phù hợp nhất được
lưu trữ là ký tự được nhận dạng.

Hình 1_Lưu đồ thuật toán các bước triển khai Thuật toán so khớp mẫu.
CÁC BƯỚC THỰC HIỆN

Hình 2_Lưu
đồ thuật
toán các
bước thực
hiện trong
nhận dạng
ký tự quang
học.
CÁC BƯỚC THỰC HIỆN
1. Preprocessing

Bức ảnh trước khi được xử lý nhận dạng thì phải trải qua quá trình tiền xử lý . Trong quá
trình tiền xử lý sẽ loại bỏ nhiễu, loại bỏ các bức ảnh chồng lấn và đoạn văn bản không mong
muốn.
CÁC BƯỚC THỰC HIỆN
2. Gray scaling

Là bước đế chuyển đổi ảnh màu sang ảnh đen trắng. Bức ảnh để nhận dạng phải được chuyển
sang ảnh đen trắng để được nhận dạng.

Hình 3_Hình ảnh Grayscale


CÁC BƯỚC THỰC HIỆN
3.Threshold Image

Threshold Image là một loại phân đoạn hình ảnh bằng cách sử dụng một hoặc nhiều đặc điểm
của pixel (ví dụ: giá trị cường độ, giá trị màu).
Đối tượng là tạo ra một phiên bản nhị phân của hình ảnh đầu vào, đặt mỗi pixel vào một trong
hai danh mục, ví dụ: "đen" hoặc "trắng".

Ở đây thuật toán Otsu Thresholding được sử dụng.

Hình 4_Hình ảnh về Threshold Image sử dụng Otsu


Binarization.
CÁC BƯỚC THỰC HIỆN
4. Remove Noise

Để loại bỏ nhiễu không mong muốn khỏi hình ảnh đen và trắng, tôi đã sử dụng chức năng
'bwareaopen' trong MATLAB để loại bỏ tất cả các thành phần nhỏ dưới 30 điểm ảnh khỏi hình ảnh. 
Việc loại bỏ các thành phần nhỏ hơn là một bước quan trọng vì nó sẽ giúp loại bỏ nhiễu không
mong muốn trong hình ảnh mà nếu không loại bỏ cuối cùng có thể ảnh hưởng đến phân đoạn  của ký
tự.
CÁC BƯỚC THỰC HIỆN

Hình 5_Kết quả ảnh sau khi qua quá trình xử lý


và loại bỏ nhiễu.
CÁC BƯỚC THỰC HIỆN
5. Segmentation

-  Phân chia dòng:


Để đạt được kết xuất theo định dạng tương tự như hình ảnh nhập liệu, trước tiên cần phân đoạn
hình ảnh theo chiều ngang vì nó giúp duy trì thứ tự của các ký tự. Ở đây, giả định cơ bản là không
được chồng chéo giữa các dòng và tổng các điểm ảnh trong một dòng là 0.
Giai đoạn này cũng được coi là làm đứt đoạn giữa các dòng văn bản trong hình ảnh. Sử dụng
chức năng này, chúng em phân loại dòng văn bản một cách phù hợp  và lưu các dòng văn bản còn lại
vào ma trận khác để văn bản không bị mất hoặc chồng chéo trước khi phân tách. 
CÁC BƯỚC THỰC HIỆN

Hình 6_Hình ảnh sau giai đoạn xử lý phân chia từng


dòng của đoạn văn bản.
CÁC BƯỚC THỰC HIỆN
6.Character
Recognition

- Phân loại ký tự:


Để phương pháp khớp mẫu hoạt động,  chúng ta cần phân loại kết xuất của phân đoạn đường
thẳng thành phân đoạn một ký tự. Tôi sử dụng cách tiếp cận của 'bwlabel' để kiểm tra sự kết nối của
các chữ cái và dán nhãn các thành phần kết nối.
Bước kế tiếp là cắt từng nhóm pixel có nhãn bằng cách tìm các giá trị tối thiểu và tối đa của nhóm
của hàng và cột của nó và trích xuất các ký tự ra.  Em đã thay đổi kích thước hình ảnh đã cắt thành 42
x 24 pixel; để tạo điều kiện thuận lợi hơn cho việc so khớp mẫu vì các mẫu được lưu trữ trong cơ sở
dữ liệu cũng có kích thước 42 x 24 pixel. Thay đổi kích thước đã giúp đạt được ranh giới rõ ràng hơn
cho các ký tự được phân đoạn.
CÁC BƯỚC THỰC HIỆN

Hình ảnh ra sẽ có dạng:


CÁC THUẬT TOÁN SỬ
DỤNG

Hình 7_Thay đổi kích thước hình ảnh cắt thành 42x24 pixel. Hình 8_Bitmap được thực hiện bởi ma trận
42x24 với các tọa độ 0 và 1.
CÁC BƯỚC THỰC HIỆN
6. Character
Recognition

Để nhận dạng các ký tự từ hình ảnh đầu vào được thực hiện bằng phương pháp khớp mẫu.
Sau khi nhận được các hình ảnh phân đoạn thích hợp của ký tự, việc đối sánh chúng với các mẫu
của tập dữ liệu sẽ xác định các ký tự.
Đối sánh mẫu là một thuật toán mà có ý tưởng của đối sánh mọi pixel của một ảnh nhị phân
với mẫu từ dữ liệu thử nghiệm. Ảnh nhị phân được đưa vào sẽ được tính toán giá trị tương quan
(giá trị đối sánh) giá trị tương quan lớn nhất mà được xem xét tùy theo mẫu. Mẫu đối sánh nhận
dạng bằng cách tính toán giá trị tương quan giữa ảnh vào và ảnh mẫu.

Quá trình này liên quan đến việc sử dụng cơ sở dữ liệu của các ký tự hoặc mẫu. Ở đó tồn tại
một mẫu(Templates) cho tất cả các đầu vào có thể có của ký tự Để nhận biết xảy ra,ký tự  đầu vào
được so sánh với mỗi mẫu để tìm một kết hợp chính xác hoặc mẫu với đại diện gần nhất của ký tự
đầu vào.Hàm r sau sẽ trả về một giá trị cho biết mức độ tốt của mẫu n khớp với ký tự đầu vào: 
CÁC BƯỚC THỰC HIỆN

n = số pixel trong một ma trận


r = giá trị tương quan giữa hai ma trận
Xịj = giá trị pixel của ma trận cỡ i x j (ma trận mẫu)
Xik = giá trị pixel của ma trận cỡ i x k
Xj = giá trị trung bình cộng của một pixel trong ma trận
(j)
Xi = giá trị trung bình của một pixel trong ma trận (i)
CÁC BƯỚC THỰC HIỆN
Trong hình 9 thể hiện ví dụ của dữ liệu. Dữ liệu được chuyển thành ảnh nhị phân. Ảnh nhị
phân được gọi là một mẫu nhị phân. Mẫu sẽ được so sánh với mẫu khác.

Hình 9_Ví
dụ của
mẫu nhị
phân.

Sự nhận dạng được hoàn thành với mẫu đối sánh tương quan. Phương pháp này hữu dụng cho tìm
kiếm hình ảnh mà đối sánh ảnh vào. Mẫu đối sánh được làm cho sự so sánh mẫu nhị phân với mẫu dữ
liệu có sẵn. Giá trị tương quan thu được từ ảnh mẫu với dữ liệu vào là 0.634012. Ảnh 10 thể hiện sự so
sánh giữa một mẫu nhị phân và ảnh vào như một mẫu dữ liệu.
CÁC BƯỚC THỰC HIỆN

Từ ảnh 11, sự tính toán của ảnh


vào so sánh với mẫu nhị phân
tạo nên một giá trị tương quan r
= 0.86711. Kết quả được thể
hiện rằng mẫu dữ liệu ảnh 2 có
mức giá trị cao hơn mẫu dữ liệu
ảnh 1. Vì Vậy, dữ liệu thuận tiện
Hình 10_Sự so sánh giữa mẫu nhị phân và mẫu dữ liệu của ảnh.(1) nhất là dữ liệu mà có giá trị
tương quan lớn nhất, gọi là mẫu
dữ liệu ảnh thứ 2. Tiếp theo, ký
tự đầu vào được nhận dạng như
dữ liệu đầu vào thứ 2.

Hình 11_Sự so sánh giữa mẫu nhị phân và mẫu dữ liệu của ảnh.(1)
GUIDE

Hình 12_Giao diện Guide ban đầu.


GUIDE

Hình 13_Giao diện guide khi nạp ảnh và thực hiện.


THỰC NGHIỆM

Stt Giai đoạn Độ chính xác

1
Tiền xử lý 100%

2
Phân đoạn 95%

3 Nhận dạng ký tự chữ 91%


4 Nhận dạng số 95.75%
5 Nhận dạng dấu cách 61%
THỰC NGHIỆM
Thực nghiệm 2: Chúng em dùng  6 hình ảnh với 6 phông chữ khác nhau với 61 cùng ký tự như hình mẫu:
Stt Phông chữ Số ký tự Số ký tự Độ chính xác Ghi chú
nhận dạng nhận dạng
đúng sai

1 Arial 60 1 98.36% Sai ở ký tự:



2 Time New 43 18 70.49% Sai  ở ký tự:
Roman Q, E, U, I, D,
G, H, V, B, N,
M, u, i, a, l,
v, n, 1

3 Calibri 59 2 96.72% Sai ở chữ: l,


1
4 Consolas 55 6 91.66% Sai ở ký tự:
W, M, r, l,
5,0

Hình 14_Hình ảnh mẫu xử lý. 5 TeamViewer 59 2 96.72% Sai ở chữ: y,


I, sai nhiều ở
dấu cách
Tính toán xác suất chính xác của từng trường hợp và
kết quả được ghi vào bảng bên: 6 Tahoma 58 3 95.08% Sai ở ký tự:
M, o, 1 
THỰC NGHIỆM
Biểu đồ thế hiện cho tất cả các trường hợp

Nhận xét và thảo luận:


•Các phông chữ arial, calibri,
teamviewer, tahoma có độ
chính xác cao. Phông chữ
Time New Roman có độ chính
xác rất thấp. 
•Nhận dạng dấu cách đối với
văn bản dài vẫn chưa quá
chính xác.
PHƯƠNG ÁN TƯƠNG LAI

- Cải thiện chất lượng nhận dạng.


- Tìm hiểu về các thuật toán nhận dạng tốt hơn Neural, KNN, ANN

- Xây dựng bộ nhận dạng cho Tiếng Việt.
TÀI LIỆU THAM KHẢO
Implementation of Handwritten Character Recognition using Template Matching
Ayushi Chudgor†* and Vinaya Sawant†
†Department of Information Technology, DJSCE Mumbai University, Vile Parle, Mumbai -400 057, India
Accepted 14 Nov 2016, Available online 18 Nov 2016, Vol.6, No.6 (Dec 2016)

Comparison of Template Matching Algorithm and Feature Extraction Algorithm in Sundanese Script Transliteration
Application using Optical Character Recognition
Yana Aditia Gerhana, Muhammad Farid Padilah, Aldy Rialdy Atmadja, Department of Informatics, UIN Sunan Gunung Djati
Bandung, Indonesia
Volume 5 No.1 | June 2020: 73-80

OPTICAL CHARACTER RECOGNITION USING TEMPLATE MATCHING (ALPHABETS & NUMBERS)


RACHIT VIRENDRA ADHVARYU
M.E Student, Department of CSE, B. H. Gardi Vidyapith, Rajkot, Gujarat, India
Vol. 3, Issue 4, Oct 2013, 227-232

Multi Font And Size Optical Character Recognition Using Template Matching
Jatin M Patil , Ashok P. Mane E&TC Department, B.M.I.T. Solapur, India E&TC Department, T.P.C.T.’s C.O.E. Osmanabad,
India
Volume 3, Issue 1, January 2013

You might also like