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

Tìm hiểu phương pháp đánh giá độ chính xác của các hệ thống nhận dạng chữ việt

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.03 MB, 76 trang )

Trang - i-

ĐẠI HỌC THÁI NGUYÊN
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN&TRUYỀN THÔNG
-----------------------------------

NGÔ MINH HIẾU

TÌM HIỂU PHƯƠNG PHÁP ĐÁNH GIÁ ĐỘ CHÍNH XÁC
CỦA CÁC HỆ THỐNG NHẬN DẠNG CHỮ VIỆT

LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH

Thái Nguyên 2015


Trang - ii-

ĐẠI HỌC THÁI NGUYÊN
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN&TRUYỀN THÔNG
===================

NGÔ MINH HIẾU

TÌM HIỂU PHƯƠNG PHÁP ĐÁNH GIÁ ĐỘ CHÍNH XÁC
CỦA CÁC HỆ THỐNG NHẬN DẠNG CHỮ VIỆT

Chuyên ngành: Khoa học máy tính
Mã số: 60 48 01 01

LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH



NGƯỜI HƯỚNG DẪN KHOA HỌC
TS. NGUYỄN THỊ THANH TÂN

Thái Nguyên 2015


Trang - 1-

LỜI CAM ĐOAN
Tôi xin cam đoan rằng bản luận văn này là tự thân nghiên cứu và hoàn
thành dưới sự hướng dẫn khoa học của TS. Nguyễn Thị Thanh Tân. Nếu có gì
vi phạm tôi xin hoàn toàn chịu trách nhiệm.
Thái Nguyên, ngày tháng năm 2015

Ngô Minh Hiếu


Trang - 2-

LỜI CẢM ƠN
Lời đầu tiên tôi xin gửi lời cảm ơn chân thành và lòng biết ơn sâu sắc tới
TS Nguyễn Thị Thanh Tân, người đã chỉ bảo và hướng dẫn tận tình cho tôi và
đóng góp ý kiến quý báu trong suốt quá trình học tập, nghiên cứu và thực hiện
luận văn này.
Tôi xin trân trọng cảm ơn Ban giám hiệu Trường Đại học Công nghệ
Thông tin và Truyền thông, Đại học Thái Nguyên, khoa CNTT đã giúp đỡ và
tạo các điều kiện cho chúng tôi được học tập và làm khóa luận một cách thuận
lợi.
Và cuối cùng tôi xin gửi lời cảm ơn đến gia đình, người thân và bạn bè,

những người luôn bên tôi và là chỗ dựa giúp cho tôi vượt qua những khó khăn
nhất. Họ luôn động viên tôi khuyến khích và giúp đỡ tôi trong cuộc sống và
công việc cho tôi quyết tâm hoàn thành luận văn này.
Tuy nhiên do thời gian có hạn, mặc dù đã nỗ lực cố gắng hết mình nhưng
chắc rằng luận văn khó tránh khỏi những thiếu sót. Rất mong được sự chỉ bảo,
góp ý tận tình của quý Thầy Cô và các bạn.
Tôi xin chân thành cảm ơn!
Thái Nguyên, ngày tháng năm 2015

Ngô Minh Hiếu


Trang - 3-

MỤC LỤC
LỜI CAM ĐOAN ......................................................................................... 1
LỜI CẢM ƠN ............................................................................................... 2
MỤC LỤC .................................................................................................... 3
HÌNH VẼ ...................................................................................................... 5
BẢNG ............................................................................................................ 6
DANH MỤC CÁC TỪ VIÊT TẮT .............................................................. 7
MỞ ĐẦU ....................................................................................................... 8
CHƯƠNG 1 - TỔNG QUAN VỀ NHẬN DẠNG CHỮ ............................ 12
1.1.Qui trình chung của một hệ nhận dạng chữ .................................... 12
1.1.1.Phân lớp mẫu ............................................................................... 12
1.1.2.Nhận dạng văn bản ....................................................................... 13
1.2.Tìm hiểu một số phần mềm nhận dạng chữ .................................... 16
1.2.1.VnDOCR .................................................................................. 16
1.2.2.FineReader ................................................................................... 18
1.2.3.OmniPage..................................................................................... 20

1.2.4. VietOCR ..................................................................................... 20
1.3. Những vấn đề ảnh hưởng tới chất lượng của một phần mềm nhận
dạng ......................................................................................................... 22
1.3.1.Chữ bị dính, nhòe ......................................................................... 23
1.3.2.Văn bản bị đứt hoặc mất nét ......................................................... 24
1.3.3.Văn bản bị nhiễu .......................................................................... 25
1.3.4.Văn bản được in với các kiểu font chữ đặc biệt ............................ 26
1.3.5.Cỡ chữ quá lớn hoặc quá nhỏ ....................................................... 26
1.4. Kết luận ............................................................................................ 27
CHƯƠNG 2 - PHƯƠNG PHÁP ĐÁNH GIÁ HIỆU QUẢ CỦA CÁC
THUẬT TOÁN NHẬN DẠNG CHỮ VIỆT .............................................. 28
2.1. Một số khái niệm ............................................................................... 28
2.2. Bài toán hiệu chỉnh chuỗi ký tự (string editing) ................................. 29
2.3. Thuật toán Ukkonen........................................................................... 34


Trang - 4-

2.4. Đánh giá độ chính xác mức ký tự ....................................................... 40
2.5. Đánh giá độ chính xác mức ký tự theo lớp mẫu ................................. 45
2.6. Hiệu quả của các ký tự đánh dấu ........................................................ 45
2.7. Độ chính xác mức từ .......................................................................... 47
CHƯƠNG 3 :THỰC NGHIỆM VÀ ĐÁNH GIÁ KẾT QUẢ................... 52
3.1.Phân tích, cài đặt chương trình........................................................ 52
3.1.1.Quy trình thực hiện ...................................................................... 52
3.1.2.Các cấu trúc dữ liệu ...................................................................... 53
3.1.3.Danh sách các từ dừng trong tiếng Việt ........................................ 55
3.1.4 Danh sách các ký tự đặc biệt ........................................................ 56
3.1.5.Module đánh giá độ chính xác mức ký tự ..................................... 57
3.1.6.Module đánh giá độ chính xác mức từ .......................................... 59

3.2.Đánh giá thực nghiệm ....................................................................... 66
3.2.1Dữ liệu thực nghiệm ...................................................................... 66
3.2.2 Kết quả thực nghiệm .................................................................... 69
3.3.Kết luận chương 3 ............................................................................. 71
KẾT LUẬN ................................................................................................. 72
DANH MỤC TÀI LIỆU THAM KHẢO ................................................... 73


Trang - 5-

HÌNH VẼ
Hình 1.1: Qui trình chung của một hệ thống nhận dạng chữ ......................... 15
Hình 1.2. Màn hình làm việc của VnDOCR ................................................. 17
Hình 1.3. Màn hình kết quả phân tích và nhận dạng ảnh hình 1.7 ................. 18
Hình 1.4 Màn hình làm việc của OmniPage ................................................. 20
Hình 1.5 Màn hình làm việc của VietOCR ................................................... 21
Hình 1.6 Trường hợp văn bản in đậm ........................................................... 23
Hình 1.7: Một số hình ảnh bị biến dạng của các ký tự .................................. 23
Hình 1.8 Hình ảnh các ký tự tiếng Việt bị nhập nhằng phần dấu .................. 24
Hình 1.9 Trường hợp văn bản bị đứt và mất nét ........................................... 24
Hình 1.10 Hình ảnh của ký tự bị biến dạng do lỗi đứt nét............................. 24
Hình 1.11 Một số dạng nhiễu thường gặp trên văn bản................................. 25
Hình 1.12 Văn bản bị các nhiễu đánh dấu .................................................... 25
Hình 1.13 Văn bản bị nhiễu do bị chồng chữ ký/con dấu ............................. 26
Hình 1.14 Văn bản được in với kiểu font chữ đặc biệt.................................. 26
Hình 2.1: Đồ thị G(A,B), với A = zxy và B = xyxz ...................................... 32
Hình 2.2: Các đường đi trên đồ thị G(A, B).................................................. 33
Hình 2.3: Sự tương ứng giữa chuỗi văn bản nhận dạng và văn bản mẫu ....... 42
Hình 2.4: Độ chính xác mức từ..................................................................... 49
Hình 3.1 Quy trình thực hiện của chương trình ............................................ 52

Hình 3.2: Kết quả đánh giá độ chính xác mức ký tự trên một văn bản tiếng
Anh .............................................................................................................. 62
Hình 3.3: Đánh giá độ chính xác mức từ trên 1 file văn bản tiếng Anh......... 66


Trang - 6-

BẢNG
Bảng 2.1: Giải thuật cho bài toán chỉnh sửa chuỗi ........................................ 34
Bảng 2.2: Độ chính xác mức ký tự ............................................................... 44
Bảng 3.1 Bảng danh sách các từ dùng trong tiếng Việt................................. 56
Bảng 3.2 Thông tin các thao tác hiệu chỉnh .................................................. 58
Bảng 3.3 Thông tin về đánh giá độ chính xác mức ký tự .............................. 58
Bảng 3.4: Các tập dữ liệu tiếng Anh ............................................................. 67
Bảng 3.5: Các tập dữ liệu Tiếng Việt............................................................ 68
Bảng 3.6: Độ chính xác mức ký tự trên tập dữ liệu tiếng Anh ...................... 69
Bảng 3.7: Độ chính xác mức ký tự trên các tập dữ liệu tiếng Việt ................ 70
Bảng 3.8: Độ chính xác mức từ trêntập dữ liệu tiếng Anh ............................ 70
Bảng 3.9: Độ chính xác mức từ tập dữ liệu tiếng Việt .................................. 70


Trang - 7-

DANH MỤC CÁC TỪ VIÊT TẮT
STT
1

Từ viết tắt
NLP


2

LCS

3

OCR

Ý nghĩa
Natural Language
Processing
Longest common
subsequence
Optical Character
Recognition

Nội dung
Xử lý ngôn ngữ tự
nhiên
Dãy chung dài nhất
Nhận dạng ký tự
quang học


Trang - 8-

MỞ ĐẦU
1. Tính cấp thiết của luận văn
Nhận dạng mẫu là một ngành khoa học mà vai trò của nó là phân lớp các
đối tượng thành một số loại hoặc một số lớp riêng biệt. Tuỳ thuộc vào lĩnh

vực ứng dụng, các đối tượng có thể ở dạng ảnh, dạng tín hiệu sóng hoặc một
kiểu dữ liệu bất kỳ nào đó mà cần phải phân lớp. Những đối tượng này được
gọi bằng một thuật ngữ chung đó là “mẫu” (pattern). Nhận dạng mẫu đã được
biết đến từ rất lâu, nhưng trước những năm 1960 nó hầu như chỉ là kết quả
nghiên cứu về mặt lý thuyết trong lĩnh vực thống kê. Tuy nhiên, với sự phát
triển không ngừng của khoa học kỹ thuật về phần cứng cũng như phần mềm,
các yêu cầu về mặt ứng dụng thực tế của lĩnh vực nhận dạng mẫu ngày càng
tăng lên và hiện nay nhận dạng mẫu đã được sử dụng trong rất nhiều lĩnh vực
như y học, tự động hoá một số qui trình sản xuất công nghiệp, dự báo thời
tiết, dự báo cháy rừng,v.v. Ngoài ra nhận dạng mẫu còn là thành phần quan
trọng trong hầu hết các hệ thống máy tính thông minh được xây dựng để thực
hiện việc ra quyết định.
Cùng với sự phát triển của nhận dạng mẫu, nhận dạng chữ đã và đang
ngày càng trở thành một ứng dụng không thể thiếu được trong đời sống xã hội
của con người. Nhận dạng chữ là quá trình chuyển đổi từ dạng hình ảnh của
một hay nhiều trang ảnh chứa các thông tin văn bản thành tệp văn bản thực sự
có thể soạn thảo được trên máy tính. Ngoài ứng dụng số hóa các trang văn
bản, tài liệu, hiện tại nhận dạng chữ còn được ứng dụng rộng rãi trong các
hoạt động giao dịch hàng ngày và qui trình tự động hóa các công việc văn
phòng, chẳng hạn như nhập liệu tự động phiếu chấm thi trắc nghiệm, phiếu
điều tra, nhận dạng các dòng địa chỉ trên phong bì thư, nhận dạng nhãn sản
phẩm, nhận dạng thông tin cá nhân trên chứng minh nhân, hộ chiếu, card
visit,v.v.


Trang - 9-

Trên thế giới, bài toán nhận dạng chữ đã được đầu tư nghiên cứu từ
những năm 50 của thế kỷ trước. Những sản phẩm nhận dạng chữ hiện đã được
thương mại hóa rộng rãi trên thị trường, điển hình như ABBYY FineReader

11 (có khả năng nhận dạng được 189 ngôn ngữ khác nhau, kể cả tiếng Việt).
Bên cạnh đó, còn có các dòng sản phẩm được tích hợp với phần cứng của
máy tính như OmniPage, Omniform, Scanshell, v.v.. Với lợi thế có một cộng
đồng nghiên cứu rộng lớn, từ những năm 1996, Viện nghiên cứu khoa học
thông tin (The Information Science Research Institute – ISRI), thuộc trường
Đại học Nevada, Las Vegas đã kết hợp với các nhóm nghiên cứu tại Mỹ và
Anh để xây dựng một một bộ công cụ đánh giá hiệu quả của các engine nhận
dạng (OCRtk) và một cơ sở dữ liệu văn bản mẫu lớn (gồm trên 2229 trang
văn bản), đa dạng về chủng loại (sách , báo, tạp chí, fax, thư tín, báo cáo tài
chính của các doanh nghiệp, tài liệu khoa học kỹ thuật, văn bản luật, v.v.) và
chất lượng. Mỗi trang văn bản được quét với lần lượt với 3 ngưỡng độ phân
giải 200, 300 và 400 dpi với các mức độ đậm, nhạt khác nhau. Ngoài ra, để
đánh giá hiệu quả của các thuật toán nhận dạng chữ viết tay còn có các bộ dữ
liệu chuẩn như đối với nhận dạng chữ viết tay còn có các bộ dữ liệu chuẩn
như MNIST, USPS, v.v.
Cùng với xu thế phát triển của thế giới, bài toán nhận dạng chữ Việt
cũng đã thu được những kết quả ứng dụng đáng kể, với các sản phẩm thương
mại hóa điển hình như sản phẩm VnDOCR (đã được ứng dụng tại hầu hết các
cơ quan, đơn vị trên toàn quốc), sản phẩm FineReader 11 (đã được ứng dụng
để số hóa tài liệu trong các dự án chính phủ điện tử). Tuy nhiên, do mới chỉ
thực sự được đầu tư nghiên cứu trong khoảng hơn chục năm trở lại đây nên
các sản phẩm nhận dạng chữ Việt chưa thể đáp ứng được hết các yêu cầu của
người sử dụng, chẳng hạn như độ chính xác nhận dạng không cao đối với chữ
viết tay và các văn bản đầu vào kém chất lượng, chỉ làm việc với ảnh đa cấp


Trang - 10-

xám hoặc ảnh nhị phân có nền đồng nhất,...[1]. Vì những lý do nêu trên, việc
đầu tư nghiên cứu để tiếp tục nâng cao độ chính xác của các thuật toán nhận

dạng chữ Việt là một vấn đề thực sự cần thiết, có cả ý nghĩa khoa học lẫn thực
tiễn. Vấn đề lớn nhất mà hiện nay các nhóm nghiên cứu về nhận dạng chữ
Việt đang phải đối mặt là chưa có được một bộ công cụ cũng như cơ sở dữ
liệu mẫu chuẩn, phục vụ cho việc thử nghiệm và đánh giá các thuật toán nhận
dạng.
2. Mục tiêu của luận văn
Nội dung nghiên cứu của luận văn hướng tới 2 mục tiêu chính:
 Xây dựng bộ công cụ đánh giá độ chính xác của các phần mềm nhận
dạng chữ Việt.
 Xây dựng cơ sở dữ liệu mẫu chuẩn, phục vụ cho việc nghiên cứu,
đánh giá và thử nghiệm các thuật toán nhằm nâng cao chất lượng
nhận dạng.
Phần thực nghiệm, luận văn sẽ tiến hành đánh giá độ chính xác của
một số phần mềm nhận dạng chữ hiện đang được thương mại hóa hoặc
công bố rộng rãi trên thị trường như VnDOCR, FineReader, Omnipage,
VietOCR...
3. Bố cục của luận văn
Các nội dung trình bày trong luận văn được chia thành 3 chương:
Chương I: Tổng quan về nhận dạng chữ
Chương này trình bày tổng quan về bài toán nhận dạng chữ, những yếu
tố ảnh hưởng tới độ chính xác của các phần mềm nhận dạng chữ.
Chương II: Phương pháp đánh giá hiệu quả của các phần mềm nhận
dạng chữ Việt
Chương này trình bày cơ sở lý thuyết của các độ đo và phương pháp
đánh giá chất lượng (độ chính xác) của các hệ thống nhận dạng được đề xuất


Trang - 11-

trên cơ sở bài toán đối sánh hai chuỗi ký tự dựa trên ý tưởng quy hoạch động

với họ các hàm mục tiêu được xây dựng từ các chi phí của các bước hiệu
chỉnh để biến văn bản được nhận dạng thành văn bản mẫu.
Chương III: Thực nghiệm và đánh giá kết quả
Trong chương III, luận văn sẽ mô tả chi tiết quá trình cài đặt chương
trình thử nghiệm tự động đánh giá chất lượng (độ chính xác) của các phần
mềm (thuật toán) nhận dạng chữ. Chương trình được kiểm thử với các phần
mềm VnDOCR, FineReader, Omnipage, VietOCR, v.v.


Trang - 12-

CHƯƠNG 1 - TỔNG QUAN VỀ NHẬN DẠNG CHỮ
Nhận dạng chữ là lĩnh vực được nhiều nhà nghiên cứu quan tâm và cho
đến nay lĩnh vực này cũng đã đạt được nhiều thành tựu cả về mặt lý thuyết lẫn
ứng dụng thực tế. Chương này sẽ trình bày các khía cạnh tổng quan về bài
toán nhận dạng chữ. Trong đó, phần đầu tiên của chương sẽ đề cập đến các
thao tác xử lý cơ bản trong qui trình chung của bài toán nhận dạng chữ. Phần
tiếp theo là những tìm hiểu, khảo sát về các phần mềm nhận dạng chữ đang
được công bố và thương mại hóa trên thị trường như phần mềm FineReader,
VnDOCR, Omnipage, VietOCR. Phần cuối cùng trình bày và hệ thống lại
những vấn đề thường gặp trong bài toán nhận dạng cũng như các yếu tố ảnh
hưởng đến chất lượng của một hệ thống nhận dạng.

1.1. Qui trình chung của một hệ nhận dạng chữ
Qui trình chung của một hệ thống nhận dạng chữ thường gồm hai giai
đoạn là: Phân lớp mẫu và nhận dạng văn bản.
1.1.1. Phân lớp mẫu
Phân lớp (sắp lớp) mẫu là giai đoạn quyết định trong quá trình nhận
dạng. Hai kiểu phân lớp điển hình thường được sử dụng là: phân lớp có giám
sát (học có giám sát) và phân lớp không giám sát (học không giám sát). Các

vấn đề thường được đặt ra trong bước phân lớp là:
 Độ chính xác: Độ tin tưởng của một luật phân lớp được thể hiện bởi tỷ
lệ phân lớp đúng. Nhìn chung, độ chính xác được đo bởi tập dữ liệu
học và độ chính xác được đo bởi tập dữ liệu thử nghiệm là khác nhau.
Đây không phải là một điều bất thường, đặc biệt trong các ứng dụng
học máy, đối với tập dữ liệu học thì có thể đúng hoàn toàn, nhưng trên
tập dữ liệu thử nghiệm có khi kết quả lại rất tồi tệ. Khi nói đến độ chính
xác của một thuật toán phân lớp thì thường là nói đến độ chính xác trên
tập dữ liệu thử nghiệm. Kinh nghiệm thực tế cho thấy, độ chính xác của


Trang - 13-

một thuật toán phân lớp phụ thuộc khá nhiều vào tập dữ liệu học (cả về
mặt số lượng lẫn chất lượng) nói một cách khác là việc trích chọn đặc
trưng của các mẫu có ảnh hưởng lớn tới độ chính xác của quá trình
phân lớp.
 Tốc độ phân lớp: Đây là yếu tố đặc biệt quan trọng đối với các hệ
thống có tính thời gian thực, chẳng hạn như nhận dạng chữ viết tay trực
tuyến (online), ...
 Tính dễ hiểu: Thuật toán phân lớp đơn giản, dễ cài đặt và hiệu quả.
 Thời gian học: Nhất là trong một môi trường thường xuyên thay đổi,
cần phải học một luật phân lớp một cách nhanh chóng hoặc hiệu chỉnh
một luật đã có trong thời gian thực. Để học nhanh, nhiều khi ta chỉ cần
sử dụng một số lượng nhỏ các mẫu huấn luyện để thiết lập các luật
phân lớp.
1.1.2. Nhận dạng văn bản
Các bước cần thực hiện trong giai đoạn này được thể hiện cụ thể trên
Hình 1.1 [1] bao gồm:
1. Thu nhận và lưu trữ ảnh: Đây là công đoạn đầu tiên trong một quá

trình nhận dạng ảnh. Trong một hệ thống nhận dạng, ảnh thường được thu
nhận qua scanner, sau đó được lưu trữ dưới các định dạng file (.pcx,
.bmp, .jpg, .tif, .gif, .png, ...). Nhìn chung việc lựa chọn định dạng
file lưu trữ sẽ tuỳ thuộc vào các văn bản đầu vào cần nhận dạng và các
yêu cầu cụ thể của từng hệ thống.
2. Tiền xử lý ảnh: Đây là công đoạn sử dụng các kỹ thuật xử lý ảnh để
nâng cao chất lượng ảnh đầu vào. Nhìn chung, chất lượng của ảnh đầu
vào sẽ ảnh hưởng nhiều đến chất lượng nhận dạng. Vì vậy, tiền xử lý ảnh
là một bước không thể thiếu được trong một hệ thống nhận dạng hay xử lý


Trang - 14-

ảnh. Các kỹ thuật thường được sử dụng trong quá trình tiền xử lý là: Phân
ngưỡng, căn chỉnh độ lệch trang văn bản, lọc nhiễu, nối nét đứt trên ảnh,...
3. Phân đoạn ảnh: Đây là một trong những công đoạn quan trọng nhất
trọng nhất của quá trình nhận dạng và có ảnh hưởng lớn đến kết quả nhận
dạng. Hai cách tiếp cận phổ biến được đề xuất trong quá trình phân đoạn
ảnh là:
 Cách tiếp cận trên xuống (top-down): Toàn bộ ảnh văn bản cần phân
đoạn được coi là một khối lớn, sau đó khối này được phân thành các
khối nhỏ hơn, các khối nhỏ này lại tiếp tục được phân thành các khối
nhỏ hơn nữa cho đến khi thu được các ký tự hoặc không thể phân nhỏ
hơn được nữa. Nhìn chung, với cách tiếp cận này, phương pháp thường
dùng để phân đoạn ảnh là sử dụng các biểu đồ tần suất ngang và dọc.
Tuy nhiên, do biểu đồ tần suất bị ảnh hưởng nhiều bởi độ nghiêng trang
văn bản nên trước khi xử lý phân đoạn, ta thường phải căn chỉnh độ
lệch của trang văn bản.
 Cách tiếp cận dưới lên (bottom-up): Quá trình phân đoạn bắt đầu bằng
việc xác định những thành phần nhỏ nhất, sau đó gộp chúng lại thành

những thành phần lớn hơn, cho đến khi thu được tất cả các khối trong
trang văn bản.


Trang - 15-

Thu nhận ảnh

Tiền xử lý

Phân trang văn bản

Cập nhật tri thức
(thông qua huấn
luyện mẫu mới)

Nhận dạng

Cơ sở tri thức

Hậu xử lý

Lưu văn bản

Hình 1.1: Qui trình chung của một hệ thống nhận dạng chữ

4. Nhận dạng: Đây chính là thao tác gán nhãn cho đối tượng dựa trên
những tri thức đã học được, nói cách khác đây là thao tác tìm kiếm một lớp
mẫu phù hợp nhất với đối tượng đầu vào.
5. Học mẫu mới: Do tập mẫu huấn luyện không thể bao quát được toàn bộ

các mẫu trong thực tế nên trong quá trình nhận dạng có thể sẽ gặp những
mẫu mới mới mà hệ thống không thể nhận dạng chính xác được. Khi đó
việc học thêm những mẫu này sẽ góp phần làm tăng chất lượng của hệ
thống nhận dạng.
6. Hậu xử lý: Đây là một trong những công đoạn cuối cùng của quá trình
nhận dạng. Trong nhận dạng chữ, có thể hiểu hậu xử lý là bước ghép nối
các ký tự đã nhận dạng được thành các từ, các câu, các đoạn văn nhằm tái


Trang - 16-

hiện lại văn bản đồng thời phát hiện ra các lỗi nhận dạng bằng cách kiểm
tra chính tả dựa trên cấu trúc và ngữ nghĩa của câu, đoạn văn. Việc phát
hiện ra các lỗi, các sai sót trong nhận dạng ở bước này đã góp phần đáng
kể vào việc nâng cao kết quả nhận dạng. Đặc biệt đối với các ảnh văn bản
đầu vào không tốt (chẳng hạn: Bản in bị mờ, bị đứt nét do photo nhiều
lần,...) hoặc các văn bản in chứa nhiều thông tin hỗn hợp (chẳng hạn:
Trong văn bản có cả số lẫn chữ và các ký hiệu), điều này rất dễ gây nhầm
lẫn trong nhận dạng. Thậm chí có những trường hợp nhập nhằng chỉ có thể
giải quyết được bằng ngữ cảnh bằng cách phân tích ngữ cảnh của câu,
chẳng hạn như trường hợp nhập nhằng giữa từ “lO” với số “10”.
7. Lưu văn bản: Sau khi văn bản cần nhận dạng đã được tái tạo về dạng
nguyên bản sẽ được lưu lại ở các định dạng file được hệ thống hỗ trợ,
chẳng hạn như file dạng (.doc, .rtf, .xls, ...).

1.2. Tìm hiểu một số phần mềm nhận dạng chữ
1.2.1. VnDOCR
Phần mềm nhận dạng tiếng Việt VnDOCR là một sản phẩm của Viện
Công nghệ Thông tin. VnDOCR có khả năng nhận dạng ký tự tiếng Việt từ
máy scan hoặc file ảnh và chuyển đổi về dạng file văn bản như: *.doc.*.txt,

*.xls, *.rtf,... [18] và có thể đọc và sửa trên các phần mềm soạn thảo văn bản
thông dụng như Office, Wordpad, Notepad...


Trang - 17-

Hình 1.2: Màn hình làm việc của VnDOCR

Môi trường
+ PC với hệ điều hành Windows 9x, Windows ME, Windows 2000, Windows
XP hoặc Windows NT
Tiện ích: Bộ gõ chữ Việt và bộ phông ABC, VNI, Unicode..
Thông tin đưa vào
+ Quét trực tiếp các loại sách báo, văn bản qua máy quét (scanner).
+ Đọc và xử lý hơn 30 dạng tệp tin ảnh phổ dụng nhất như PCX, BMP, TIF,
GIF, JPG, ...
Có thể nhận dạng trực tiếp tài liệu quét qua scanner. 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.
Có thể là các dạng tệp tin của Microsoft Word (.doc), tệp ký tự ASCII (.txt),
Rich Text Format (.rtf), *.xls (đối với bảng biểu).
Theo công bố, độ chính xác của phần mềm có thể đạt tới 99 % trong trường
hợp các file ảnh cần nhận dạng có chất lượng tốt.


Trang - 18-

Các tính năng chính:
- Tiền xử lý: Căn chỉnh độ nghiêng, tăng cường chất ảnh (xóa nhiễu, làm
dày nét chữ nhằm nối nét đứt, làm mỏng nét chữ,… ).
- Phân tích cấu trúc trang văn bản nhằm xác định các vùng thông tin

khác nhau (chẳng hạn vùng ảnh, vùng văn bản, vùng bảng, các dạng
tiêu đề…).
- Nhận dạng văn bản: Nhận dạng các khối văn bản đã được xác định ở
bước phân trang.
- Hậu xử lý: Định dạng lại trang văn bản ban đầu, chỉnh lỗi chính tả,…
Một số hạn chế của phần mềm (Tính đến phiên bản 4.0)
- VnDOCR chỉ làm việc với ảnh đen trắng.
- Với ảnh có cấu trúc vật lí phức tạp thì hiệu quả phân tích trang và độ
chính xác nhận dạng còn chưa cao.
1.2.2. FineReader
FineReader là một sản phẩm của hãng ABBYY, có khả năng nhận dạng đa
ngôn ngữ (198 ngôn ngữ) bao gồm cả ngôn ngữ tiếng Việt. [19]

Hình 1.3: Màn hình làm việc của FineReader


Trang - 19-

Môi trường làm việc:
PC với hệ điều hành: Windows XP, 2003, Vista, 2008, Windows 7,
Windows 8, Windows 8.1.
Các tính năng cơ bản của phần mềm:
 Tiền xử lý: Căn chỉnh độ nghiêng, tăng cường chất ảnh (xóa nhiễu, làm
dày nét chữ nhằm nối nét đứt, làm mỏng nét chữ,… )
 Phân tích cấu trúc trang văn bản nhằm xác định các vùng thông tin
khác nhau (chẳng hạn vùng ảnh, vùng văn bản, vùng bảng, các dạng
tiêu đề…).
 Nhận dạng:
 Nhận dạng các khối văn bản
 Nhận dạng công thức toán.

 Nhận dạng mã vạch.
 Văn bản: Nhận dạng các khối văn bản đã được xác định ở bước
phân trang.
 Hậu xử lý: Định dạng lại trang văn bản ban đầu, chỉnh lỗi chính tả,…
 Ngoài ra còn có các tính năng mở rộng như:
 Xuất ra XML và tích hợp với Microsoft Office Word
 Hỗ trợ các fiel ảnh đầu vào có định dạng file PDF.
 Kết quả nhận dạng có thể được xuất ra nhiều định dạng file như:
DOC, DOCX, XLS, XLSX, PPTX, RTF, PDF,PDF/A, HTML,
CSV, TXT, ODT, EPUB, FB2, DjVu...
 Chức năng tìm kiếm với Morphology Support
 Các tùy chọn lưu ảnh cao cấp
 Các ứng dụng thêm cho việc hoàn thành và in ấn các Form.


Trang - 20-

1.2.3. OmniPage
OmniPage là phần mềm nhận dạng văn bản của Nuance, có khả năng
nhận dạng trên 120 ngôn ngữ, độ chính xác có thể đạt tới 99% trên các file
ảnh đầu vào chất lượng tốt. [20]

Hình 1.4: Màn hình làm việc của OmniPage

Các tính năng cơ bản của phần mềm:
 Hỗ trợ nhiều định dạng file ảnh, bao gồm cả file pdf.
 Nhận dạng chính xác tới 99% trên hơn 120 ngôn ngữ khác nhau
 Nhận dạng được các trang có nhiều loại font, kiểu font hoặc có nền
là ảnh màu.
Hạn chế của phần mềm:

OminiPage chưa hiệu quả với các ảnh có cấu trúc phức tạp.
1.2.4. VietOCR
Phần mềm VietOCR được xây dựng từ engine nhận dạng mã nguồn mở
Tesseract của Google. VietOCR có thể hoạt động trên nhiều hệ điều hành
khác nhau như: Windows, Linux,…


Trang - 21-

Hình 1.5: Màn hình làm việc của VietOCR

Các tính năng cơ bản của phần mềm:
 Tính năng nhận dạng:
- OCR nhận dạng tốt nhất ảnh ở độ phân giải từ 200 DPI trở lên
tới 400 trong trắng đen hoặc grayscale
- Chế độ Screenshot Mode cung cấp độ nhận dạng tốt hơn cho
những hình ảnh có độ phân giải thấp
- Ngoài ra VietOCR cho phép nhận dạng trên các vùng khoanh
chọn để cho ra kết quả chính xác hơn.
- Tính năng hậu xử lý: Định dạng lại trang văn bản ban đầu, chỉnh lỗi
chính tả,…
Hạn chế của phần mềm: Độ chính xác nhận dạng không cao, các module
phân trang văn bản chưa tốt.


Trang - 22-

1.3. Những vấn đề ảnh hưởng tới chất lượng của một phần mềm
nhận dạng
Chất lượng của ảnh đầu vào là yếu tố quyết định tới độ chính xác của

một hệ thống nhận dạng. Hầu hết các hệ thống nhận dạng chữ hiện đang được
thương mại hóa trên thị trường đều cho độ chính xác cao trên những ảnh đầu
vào có chất lượng tốt. Tuy nhiên, độ chính xác này thường không được đảm
bảo trong trường hợp ngược lại. Ngay cả khi văn bản được in thông thường,
dễ dàng nhận dạng mặt chữ và định dạng, vẫn có rất nhiều lỗi sinh ra do ảnh
đầu vào có chất lượng thấp hay nói một cách khác là do những lỗi về mặt hình
ảnh (imaging defect). Những lỗi này thường bao gồm các ký tự bị dính, bị
nhiễu, in quá đậm, các ký tự bị mờ, đứt hoặc mất nét. Ngoài ra các nhiễu vệt
và các đường baseline cong cũng là những nguyên nhân gây ảnh hưởng đến
chất lượng nhận dạng. Các lỗi hình ảnh thường sinh ra trong quá trình in ấn
(printing process) hoặc quá trình thu nhận hình ảnh (scanning process). Các
băng mực máy in quá đậm có thể tạo ra các ký tự bị nhòe hoặc có vết bẩn,
trong khi các băng mực bị mòn sẽ sinh ra các bản in mờ nhạt. Việc sao chụp
(photocopy) các văn bản nhiều lần sẽ làm mất dần các thông tin làm cho các
ký tự trên đó bị đứt, gẫy và mất nét. Ở bước thu nhận hình ảnh, các phần mềm
điều khiển thiết bị quét thường cho phép người dùng hiệu chỉnh ngưỡng độ
sáng thông qua chức năng điều khiển độ sáng (brightness control). Việc lựa
chọn giá trị ngưỡng này ảnh hưởng trực tiếp tới độ chính xác của hệ thống
OCR bởi vì nếu chọn ngưỡng thấp sẽ làm cho các ký tự bị đứt, mất nét
(broken characters), nếu chọn ngưỡng cao sẽ làm cho các ký tự bị dính
(touching characters). Giá trị ngưỡng này đôi khi cũng bất thường do các
nhiễu nhiệt hoặc nhiễu điện, bản thân độ nhạy cảm (sensitivity) cũng có thể
rất khác nhau giữa các phần tử cảm ứng của máy quét do sự không hoàn hảo


Trang - 23-

của qui trình sản xuất. Do đó, các ký tự giống hệt nhau trên các phần khác
nhau trên trang văn bản có thể có hình ảnh nhị phân khác nhau [1].
1.3.1. Chữ bị dính, nhòe

Tách ký tự (character segmentation) là quá trình xác định vị trí của các
ký tự riêng biệt trong một từ. Khi các ký tự bị dính nhau hoặc bị nhòe do chữ
được quá đậm, các hệ thống OCR cần phải áp dụng những kỹ thuật đặc biệt
để phân tách chúng (xem Hình 1.6)

Hình 1.6: Trường hợp văn bản in đậm

Thậm chí đối với những ký tự có thể phân tách một cách dễ dàng, việc in
quá đậm cũng có thể làm biến dạng hình ảnh của chúng, làm cho việc nhận
dạng chúng rất khó khăn. Với kiểu in đậm, hình dạng của các ký tự hoa
thường có xu hướng tương tự nhau và giống như các hình khối. Điều này gây
khó khăn cho việc phân tách và nhận dạng chúng (xem Hình 1.7)

Hình 1.7: Một số hình ảnh bị biến dạng của các ký tự

Ngoài ra, đối với các văn bản kém chất lượng, đã qua nhiều bước tiền xử
lý, hình ảnh của các ký tự tiếng Việt có thể bị biến dạng do phần dấu bị nhòe,
bị dính vào các thành phần khác của chữ và rất khó để phân biệt (xem Hình
1.8)


×