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

Luận văn xây dựng hệ thống nhận dạng và dịch trên thiết bị di Động

65 2 0
Tài liệu được quét OCR, nội dung có thể không chính xác
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

Tiêu đề Xây Dựng Hệ Thống Nhận Dạng Và Dịch Trên Thiết Bị Di Động
Tác giả Phạm Phi Hiệu
Người hướng dẫn Thạc Sỹ Văn Hưng
Trường học Trường Đại học Công Nghệ - Đại Học Quốc Gia Hà Nội
Chuyên ngành Công Nghệ Thông Tin
Thể loại Luận văn Thạc Sỹ
Năm xuất bản 2011
Thành phố Hà Nội
Định dạng
Số trang 65
Dung lượng 2,33 MB

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

Nội dung

Song đối với một khéi lượng tải liệu khẳng lễ ví dụ như cả kho sách, đây là một vấn để nan giải, mặc dù với việc đánh máy độ chính xác rất cao nhưng lại tốn quá nhiều thời gian, trong k

Trang 1

DẠI HỌC QUỐC GIÁ HÀ NỘI

TRUONG DAL HQC CONG NGHE

PHAM PHI HIỆU

XÂY DUNG HE THONG NHAN DANG VA DICH

TREN THIET BI DIDONG

LUẬN VĂN THẠC SŸ

THả Nội - 2011

Trang 2

PHAM PHI HIỆU

XÂY DUNG HE THONG NHAN DANG VA DICH

TREN THIET BI DIDONG

Ngành: Công nghệ thông tin

Trang 3

1

MỤC LỤC DANH MỤC HIND VE

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

12 Các bước cơ bản trong một hệ thông OCR

CHƯƠNG 2 — CÁC CÔNG NGHỆ SỬ DỤNG TRONG HỆ THÔNG

2.1 Công nghệ Tesseract OCR

2.11 Gidi thiguvé Tesseract OCR

2.1.2 Tesscract làm việc như thế nào”

23.1 Giới thiệu về mô hình chent/server

23.2 Cac kidn tric client/server

23.21 Client/Server hai (Ang

23.2.2 Ctient/server ba tang

2.3.2.3 Client/server n-ting

2.4 Công nghé dich thugt Google ‘Transiate

24.1 Xirlyngdn nett te abién

2.4.3 Dịch vụ dịch thuật trực tuyến Google Translate CHUONG 3 —HE THONG NHAN DANG VA DICH TREN THIET BIDI DONG 42

3.2 (ng dung › trên client - 48

3.3.3 Chức năng hậu xử lý kết quả OCR

343.4 Chức năng sứalỗi chính ta ty dong

3.3.41, Ham dinh gif minimum edit distance (MED) -

3.3.4.2 Tim đánh giá maxinưmn số cặp kỷ lự giống nhau 33

CHƯƠNG 4— THỰC NGHIỆM VÀ ĐÁNH GIÁ .à so 55

Trang 5

DANH MUC HiNH VE

Hình 1.1: Ung dung OCR

Hình 1.2: Các đường cơ bản trong dòng text

Hình 1.3: Thành phần liên thông 4 va 8

Hình 1.4: Quy trình cơ ban trong mt hé thing OCR

Tinh 1.5 Mé tả lược để mức xám

Hình 1.6 Phân ngưỡng trên lược đồ mức xám

Hình 1.7 Kết quả chọn ngưỡng xám theo phương pháp Otsu

Tinh 1.8 Ảnh văn bản trước và sau khi chỉnh nghiêng

Hình 1.9 Ảnh văn bản trước và sau khi chỉnh hướng đúng

Hình 1.10 Các vùng nhiễu trên ảnh văn ban

Hình 1.11 b-Cầu trúc vật lý; e,d-Cấu trúc lôgic

Hình 2.1 Kiến trúc Tesseract He

Tình 2.2 Ảnh trước và sau phân tích bố cục

Hinh 2.3 Fitting cap line, mean line, baseline, descent line

Ilinh 2.4 Vi dy bé fixed pitch thanh cac ky tự

Hình 2.5 Sự khác nhau trong khoảng các từ

Hình 2.6 Các thành viên của "Liên mình di động mở"

Hình 2.7 Kiến trúc Android OS

Hình 2.8 Mê hình chentserver

Tình 2.9 Mồ hình kiến trúc client/server 2 tầng

Hình 2.10 Mê hình kiến trúc client/server 3 tầng

Hình 2.11 Dịch vụ dịch thuật online Google translate

Tlinh 2.12 Các ngôn ngữ Google Translate hỗ trợ dich

Hình 3.1 Sơ đồ hệ thắng nhận dang và dịch trên thiết bị di động,

Tình 3.2 Giao điện chính chương trinh client

Trang 6

Hình 3.5 Ảnh chụp ở chế độ chụp “block mode”

Hình 3.6 Chương trình đang chờ xử lý

Hình 3.7 Giao điện thiếp lập tùy chọn

Hình 3.8 Giao điện tab OCR Result

Tình 3.9 Giao điện tạo liễn hệ mới

Hình 3.10 Giao diện gửi SMB

Ilinh 3.11 Giao điện tim kiếm và hiển thị thông tin

Hình 3.12 Ảnh có bố cục và phân bố mẫu sắc nhức Lạp

Hình 3.13 Ảnh gốc sau khi nhị phân hóa và làm sạch

Hình 3.14 Các ảnh con cắt ra từ ảnh gốc

Hình 3.15 Kết quả OCR trên ảnh gốc

Hình 3 l6 Kết qua OCR trên các ảnh con

Hình 3.17 Định nghĩa hàm OerEromirnapc()

Hình 4.1 Kết quả thực nghiệm OCR với Tesseract engine

Tình 4.2 Kết quả thực nghiệm OCR trên 4 hệ thống khác nhau

Trang 7

+khếi đữ liệu lớn, ít bị hư hồng, đễ quản lí, dễ tìm kiếm, đễ chỉnh sửa Tuy nhiên

sẽ được sử dụng để lưu trữ tài

m thiết của nó trong cuộc sống hàng ngảy (ví dụ sách, báo ) MôL

giấy vẫn là một vật liệu quan trọng đã, dang va

liệu vì sự

nhu cầu tất yếu, con người muốn đưa cáo tài liệu đang lưu trữ trên giấy (cũng

như trên một số vật liệu khác) lên máy tỉnh để cỏ thể làm việc với chang mat

hiệu quả hơn Miệt cách thông thường, con người sẽ đánh máy trực tiếp các tài

liêu đó lên máy tính Dỗi với một số lương nhỏ tài liệu, việc này hoản toàn bình

thường Song đối với một khéi lượng tải liệu khẳng lễ (ví dụ như cả kho sách),

đây là một vấn để nan giải, mặc dù với việc đánh máy độ chính xác rất cao

nhưng lại tốn quá nhiều thời gian, trong khi với các công nghệ hiện có cho phép

1a giải quyết vấn đề này: chụp ảnh tài liệu và nhận dang ky ty trong ảnh

Nhận dạng ký tự quang học (ếng Anh: Opttoal Charaoler Recognuion,

viết tất là OCR)|20| lả quá trình rút trích kỷ tự trong ảnh cho ra dưới đạng văn ban dễ có thể lưu trữ, chỉnh sửa và tìm kiếm được lĩnh vực OCR lả một nhảnh trong ngành khoa học xử lý ảnh, tuy cỏn mới mé so với nhiều lĩnh vực khoa hợc

khác nhưng nhanh chóng đã đạt được nhiễu bước tiển quan trong, Xuất phát từ nhu cầu thực tế là đưa các tải liệu lưu trữ trên giấy vào máy tính mà không phải

đánh máy, nhiều công nghệ OCR ra đời (phát hành đưới dạng sản phẩm thương mại, miễn phí hoặc nguồn mở) đã và đang ứng dụng rộng rãi trong các lĩnh vực

liền quan đến việc nhận đạng Với sự đầu tư mạnh mế và nghiên cửu liên tục của

các cá nhân tổ chức, kết quả nhận dạng trong lĩnh vực OCR ngày càng được oẫi

thiện, đặc biệt sự nhận dạng ký tự Latinh đánh máy có thể tiến tới Li lệ chính xác

100%, Ngoài công nghệ nhận dạng ký lự quang học OCR thì hiện nay con có

thêm nhiều cơ chế nhận dạng tiêu biểu khác được ửng dụng vào thực tế như nhận dạng ký tự thông minh (Jatelligent Character Recognition, viét tit ICR),

nhận dạng vàng đánh dấu (Optical Mark Recognition, viết tắt OMR], nhận dạng

chit muc tir (éagnetic Ink Character Recognition, viét tit MICR), nhan dang mã

vach (Barcode Regconition)

Chúng ta thưởng thực hiện công việc nhận đạng trục tiếp trên máy tỉnh:

dùng các thiết bị thu ảnh để scan, chụp ảnh các tải liệu và đưa các ảnh đó lên

may Unh réi chạy ứng dụng nhận dạng đã oài đặi Điều này hầu như chi thuc

Trang 8

Tuy nhiên nhu cầu OCR của chúng La có thể xuất hiện mọi lúc mọi nơi, ví dụ

muốn lưu nhanh thông tin trong một namc card mả người bạn đưa chủ vào diện

thoại mã không phải nhận bằng tay Song chúng ta không thể lúc nào cũng mang,

bén mink may scan, may ảnh cũng như máy tính đễ hỗ trợ cho việc OCR Chưa

kế đôi khi chứng ta muốn dịch nhanh một bảng chỉ dẫn bằng tiếng nước ngoài

mả không có từ điền bên cạnh Xiệt khó khăn nữa là các ứng dụng OCR hiệu

quả cho công việc của chúng ta lại đa phần được tung ra đưới dạng thương mại,

muốn sử dụng phải mắt một chỉ phí không nhỏ Chính những sự bắt tiện thực tế

trên, vấn dé đặt ra là phải có những hệ thống phần cứng-phần mềm nhỏ gọn, di

động nhưng vẫn thực hiện mội cách linh hoại và hiệu quả các chức năng chụp

ảnh tải liệu, OCR trên ảnh đã chụp và dịch kết quả ra ngôn ngữ khác

Hiện nay công nghệ mang internet phát triển mạnh mẽ, internet có mặt hầu hết khắp nơi trên thể giới Công nghệ di động phát trién vượt bậc, việc sử

dụng điện thoại bung nỗ, điện thoại đi động trở thành mặt hàng bình dân mà ai

cũng có thể sở hữu được Nhiều công nghệ OCE tiên tiến được đưa ra đưới dạng,

mã nguồn mở và được các công ty, tổ chức lớn tài trợ phát triển Với nên ting công nghệ hiện có ở trên đã tạo ra nhiều giải pháp để xây dựng được nhiều hệ

thống có khả năng đán ứng cao với vấn đề đặt ra

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

Với mong, muôn tìm hiểu về lĩnh vực và một số công nghệ OCR tiên tiền,

dang thời mong muốn góp phần vào kho ứng dụng OCR hiện có một sản phẩm

nguồn mở mới: một hệ thông trên thiết bị di đông giúp con người có thể thu ảnh, rút trích thông tin trong ảnh, dich kết quả ra ngôn ngữ mong muốn và quản lý

các thông tỉn ấy trên thiết bị di động Thiết bị di động được chọn là điện thoại đi

động chạy hệ điều hành nguồn mở Android Và từ đó luận văn lựa chọn để tai

nghiên cứu “Vậy đựng hệ thông nhận dang và địch trên thiết bị di động”

Nội dung nghiên cứu

Lề mặt tô thuyết

-_ Nghiên cứu tổng quan về lĩnh vực OƠR, các thành phan trong một

hệ thông OCR cơ bản

- _ Nghiên cứu công nghệ mã nguồn mé ‘Tesseract -_ Nghiên cửu công nghệ mã nguồn mở Android

-_ Nghiên cứu mô hỉnh client/server

-_ Nghiên cứu công nghé dich Google ‘Iranslate

- _ Nghiên cửu phương pháp sửa lỗi chỉnh tả tự động.

Trang 9

dung nguồn mở của Tossoraot đỗ tạo ra module có chức

module có chức năng dịch văn bản sang ngôn ngữ tùy chọn Web service còn hỗ trợ chức năng hậu xử lý kết quả OCR và tự dông sửa

lỗi chính tả trên ngôn ngữ tiếng Anh

-_ Nghiên cứu xây dựng ứng dụng trên chent: sử dụng Android SI2K

để tạo ra ứng dụng chạy trên điện thoại Android có chức năng chụp

ảnh, gửi ảnh về server và nhận kết quả xử lý từ server trả về; quản

1ý nội dung thông tin đã rút trích từ ảnh,

Bồ cục luận văn

Ngoài phần mở đầu giới thiệu về mục tiêu, ý nghĩa, tỉnh hình nghiên cứu liên quan vả phần kết luận tôm tắt những kết quả chính đạt dược cũng như dưa

ra nhận xét, bố cục luận văn gồm 4 chương chính

Chương 1: Trinh bày kiên thức tổng quan về lĩnh vực OCR làm nên tảng cho các nghiên cứu về sau

Chương 2- Trình bảy nội dưng tìm hiểu về sông nghệ mã nguồn mở

Tesseract OCR, céng nghé Android, m6 hinh client/server, céng nghé dich

Google Translatc Các công nghệ, mô hình nảy được sứ dựng để xây dựng hệ

thống

Chương 3: Giới thiêu kiến trúc và các thành phần cơ bản của hệ thống

nhận đạng và dịch trên thiết bị di động đã xây dựng

Chương 4: Trình bày kết quả thực nghiệm chức năng rút trích thông tin từ ảnh của hệ thông cũng như so sánh một sách tương đối kết quả OCR với một số

hệ thắng khác

Trang 10

1.1 Giới thiệu về OCR

OCR (optical character recognition)[7] là lĩnh vực nhận dạng ký tự quang

học Kỹ thuật này cho phép máy tính tự động nhân dạng ký tự thông qua cơ chế

quang học Đối tượng của OCR là anh scan cae tai li

liên quan Mục tiêu của OCR là chuyển các nguồn tài liêu này sang các định

dạng có thể chỉnh sửa và tìm kiếm được

sách, hoặc các video

Vào những những năm đầu của thế kỷ 20, các nhà khoa học đã quan tâm

nghiên cứu trong lĩnh vực OCR Tuy nhiên kết quả lúc bấy giờ vẫn còn rất hạn chế Từ những năm 90 đến nay, OCR có những nghiên cứu mang tính đột phá, kết hợp với những công nghệ tiến tiến của thời đại đã cho ra đời những hệ thông

OCR mạnh mẽ và hiệu suất cao

Trang 11

Năm 1929, đã xuất hiện chiếc máy nhận đạng chữ số Đến những năm đầu

của thập niên 1950, chiếc máy đầu tiên có khả năng chuyển tài liệu bản in thành

ngôn ngữ trên máy tỉnh dược phat minh bởi David Shepard, một chuyên giá về

giải mã làm việc cho cơ quan An Ninh quốc gia Hoa Kỷ Năm 1955 khi

Reader's Digest mua lại công nghệ này, sản phẩm từ công nghệ OCR được đưa

ra thương mại hóa lần đầu tiên Tuy nhiên mãi dến năm 1978, phién ban OCR

cho máy tính mới được ra đời, ứng dụng đầu tiên của nó là dùng để tải những van bản luật và tin tức lên cơ sở dữ liệu trực tuyến Ngày nay, cong nghé OCR được kết hợp với máy scan tốc độ cao và những thuật toán máy tính phức hợp đã làm gia tăng tốc độ xứ lý cũng như sự chính xác của đỡ liệu Những công nghệ

OŒR hiện tại đều có thể nhận dang hau hết gác font chữ với độ chính xác cao,

một số củn hỗ trợ khá năng kết xuất ra những doạn văn bản co dinh dang gin

gidng hoàn toán với bản pốc|21|

Ngoài công nghệ nhận dạng ký tự quang học OCR thì hiện nay còn có

thêm nhiều cơ chế nhận dạng tiêu biểu khác[9] được ứng đụng vào thực tế như: nhận dạng kỹ tự thông minh ICR (1nfelligent Characier Recognition), nhận dạng ving danh dau OMR (Optical Mark Recognition), nhan dang chit myc tit MICR

(Magnetic Ink Character Recognition) va co chế nhận dạng mã vạch (barcodie)

Các công nghệ Liên tiến này đã hỗ trợ rất nhiều cho các tổ chức và doanh nghiệp

trong việu xử lý thông tin phát sinh xuyên suốt quá trình hoạt động Những lĩnh

vực thường được ứng dụng cáo công nghệ nhận dạng (rên là giáo dục, tải chính,

y tẾ, bảo hiểm, giao vận vá ngay cả trong các tổ chức của chỉnh phú như thuế,

hải quan[21]

Công nghệ nhận dạng QCR đã tạo ra sự ảnh hưởng to lớn trong việc lưu trữ, chia sẻ và chỉnh sửa thông tin Trước đây, nêu chủng ta muốn chuyên một

quyền sách từ bản in sang bản điện tử thì cách duy nhất là ngồi nhập thủ công

toàn bộ quyển sách vào máy tính thông qua chương trình soạn thảo văn bản, và điều nảy buộc chúng ta phải trả giá với một khoảng thời không nhỏ Tuy nhiên,

ngày nay với sự phát triển vượt bậo của công nghệ thông tin, chỉ cần một máy

scan kết nối với một máy tính tích hợp sẵn phần mễm nhận dạng OCR, bằng một vài thao tác đơn giản, toàn bộ quyền sách sẽ được chuyển thành tập tín đúng, như mong muốn của người sử dụng, Do dó có thể nói, công nghệ OCR đã giúp

người ta đến gần với nhiều dạng thông tin hơn, xóa bê nhiều rào cân về việc chia

sé nguồn tri thức của nhân loại

Mặc dù không được sử đụng phố biến và nhắc đến nhiều như các ngành công nghiệp viễn thông, phần cứng hay phần mềm nhưng ngành công nghiệp

Trang 12

thực tế Việc chuyển đổi thông tin Lừ tải liệu giấy sang tài liệu điện tử giúp nhiều

người dùng có thể Iruy cặp thông Lin một cách dễ đàng, cùng một lúc dù ở bất cứ dâu mả không phải chờ dợi hoặc mắt quá nhiều thời gian cho việc tìm kiểm

Diéu này cũng tạo cho công tác quản lý và bảo mật thông tin trở nên đơn giản

hơn khi tất cả những thay dỗi hoặc ngảy giờ truy cập thông tin déu dược kiểm

soát chặt chẽ Dối với các doanh nghiệp, các tổ chức, các cơ quan hành chính,

công nghệ OCR mang lại nhiều lợi ích kinh tế, tiết kiện được những khoảng chỉ phí không nhỏ như giảm thiểu không gian lưu trữ, giảm téi đa nguồn nhân lực trong công tác quản lý thông tin

Hiện nay nhiều ứng dung OCR được dua ra sử đụng dưới dạng olflinc trên máy tính hoặc tích hợp và chạy online trên các thiết bị OCR chuyên dụng,

Đặc biệt các hệ thống OƠR thời pian thực dược chú trọng phát triển ác kỹ thuật nhận dạng hiện nay kết hợp rất hiệu quả với một số phương pháp luận

trong lĩnh vực học máy (machine learning) nhu mang no ron, mé hinh Markov 4n, SVM (supper vector machines), xt ly ngôn ngữ tự nhiên Mặc dù được phát triển mạnh mẽ, nhưng kết quả nghiên cứu trong lĩnh vực OCR cũng gặp phải những trở ngại nhất định OCR không bao giờ đạt tới tỷ lệ chính xác 100% trong

nhiễu Irường hợp Các yếu tô ảnh hưởng nhiều đến kết quả OCR như chất lượng

anh dầu vào, bố cục ánh, loại ÍonL chữ, các ký Lự dặc biệt (vi đụ công thức toán

học), các dạng chữ viết phức lap (nhu chit Trung Quéc) và một số yếu Lã khác

1.12 Một số công nghệ, phần mềm OR tiêu biểu

Lĩnh vực OCR hiện nay được rất nhiều cá nhân, tổ chức quan tâm nghiên

cứu, nhiều công nghệ OCR ra đời và được ứng dụng rộng rãi trong nhiều lĩnh vực liên quan đến nhận dạng Dưới đây liệt kê danh sách một số phần mềm

OCR tiêu biểu [17]

ABBYY FimeReader Proprietary

Trang 13

11

Microsoft Office OneNote 2007 Proprietary

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

Pixel (Picture element)[2] - Ảnh trong thực tế là một ảnh liên tục về không gian vả giả trị về dộ sáng Ảnh cần phải số hóa để củ thể xử lý ảnh bằng, máy tính Trong quả trình số hóa ảnh người ta biến đổi tín hiệu liên tục thành tín

hiệu rời rạc thông qua quá trình lấy mẫu (rời rạc hóa về không gian) và lượng

hóa thành phần giá trị mà nguyền tắc mắt thường không phân biệt được hai điểm

kê nhau Khai nigm Picture Hlement (ta quen gọi hay viết là pixel - phân tử ánh, điểm ảnh) được sử dụng trong quá trình này Do vậy một ảnh có thể coi là một

tập các pixel Ở đây cũng cần phân biệt khái niệm pixel hay đề cập đến trong các

hệ thống dỗ họa máy tính Để tránh nhằm lẫn ta tạm gọi khải niềm pixel này là

pixol thiết bị Khái niệm pixel thiết bị có thể xem xét như sau: khi ta quan sal

màn hình (chế độ đồ họa), mản hình không liên Lục mà gỗm nhiễu diém nhỏ, gọi

là pixel Trong ảnh 2 chiều, mỗi pixel gềm một cặp tọa độ x, y và mâu

Dé phan giải của ảnh(esolution)[2]: chính là mật độ điểm ảnh được an

định trên một ảnh số được hiển thị Theo định nghĩa, khoảng cách giữa các điểm ảnh phải được chọn sao cho mắt người vẫn thay được sự liên tục của ảnh Việc

lựa chọn khoảng cách thích hợp tạo nên một mật độ phân bổ, đó chính là độ

phân giải và được bố trí theo hai trục x, y trong không gian hai chiều Đơn vị

cho độ phân giái là dpi (dots per inch)

Trang 14

xám là kết quả của sự mã hóa tương ứng một cường độ sáng của mỗi điểm ảnh với một giá trị số - kết quả của quá trình lượng hóa Các thang giá trị mức xám thông thường lả 16, 32, 64, 128, 256, trong đó mức thông dụng nhất là 256, mỗi

pixel được mã hóa bởi 8 bit

Anh nhi phân: Tùy theo giá trị mức xám của điểm ảnh mà các ảnh được phân chia ra thành ảnh màu, ảnh xám hay ảnh nhị phân Khi trên một ảnh chỉ có giá trị 0 hoặc 1 thì ta nói đó là một ảnh nhị phân hay một ảnh đen trắng và các

điểm ảnh của nó gọi là điểm ảnh nhị phân

Anh mau: hay còn gọi là ảnh RGB Cách biểu diễn cũng tương tu như

ảnh đen trắng, chỉ khác là các số tại mỗi phần tử của ma trận biểu diễn cho ba

màu riêng lẻ gồm: đỏ (Red), lục (Green), lam (Blue) Để biểu diễn cho một điểm

ảnh màu cần 24 bit, 24 bit này chia thành 3 khoảng 8 bịt Mỗi khoảng nảy biểu

diễn cho cường độ sáng của một trong các màu chính tổ hợp của các màu ta

được nhiều mức biểu diễn, như vậy mỗi điểm ảnh có thể được mô tả rõ giá trị

màu tự nhiên của nó (true color)

Ảnh đa cấp xám: là ảnh có nhiều mức xám khác nhau Thực tế chỉ ra rằng

bất cứ ứng dụng nảo trên ảnh mức xám cũng được ứng dụng trên anh mau Ta cd

thể biển đổi ảnh màu về ảnh xám Mỗi điểm ảnh mảu gồm 3 giá trị (Red, Green,

Blue), nếu 3 giá trị này bằng nhau thì ta có ảnh xám (grey) Khi đó mỗi điểm ảnh ta chỉ cần lưu 1 giá trị

Các đường cơ bản trong dòng text

Hình 1.2 Các đường cơ bãn trong dòng text

® Đường l (caplne): là đường thắng giới hạn chiều cao của đỉnh cao nhất

của một số chữ cái (ví dụ §, b,h,L )

© Đường 2 (mean line): là đường thẳng ở giữa của một dòng chữ, giới hạn

chiều cao của các chữ bình thường (ví dụ u,a,r,n, )

© Đường 3 (baseline): là đường thẳng thẳng nối các phần chân của hầu hết

các chữ cái trong dỏng text, và bất kì một chữ nảo cũng nằm trên một

đường này

©_ Đường 4 (đescent line) là đường thẳng giới hạn phần thấp của các chữ có thể tạo ra trên một dòng (p.y ).

Trang 15

13

© Khoảng cach gitta mean line va baseline la chiều cao cơ bản của một

dong chi, goi li x-Height

Thanh phan lién théng (connected component): là tap hop cac pixel lan cân nhau Thành phần liên thông gồm thành phần liên thông 4 và thành phần liên thông 8

a EI hon

a "mm

Hình 1.3 Thành phần liên thông 4 và 8

1.2 Các bước cơ bản trong một hệ thống OCR

Hoạt động của một hệ thông OCR thông thường gồm các bước sau: thu nhận ảnh, tiền xử lý ảnh, phân tích bố cục trang, tách dong va tir, hudn luyện và

nhận dạng, hậu xử lý Kết quả của mỗi bước ảnh hưởng rất lớn đến kết quả cuối cùng của hệ thông

Thu nhận ảnh là bước đầu tiên trong quy trình của hệ thông OCR Hình

ảnh tài liệu bên ngoài được thu nhận qua các thiết bị thu ảnh như camera, máy

ảnh, máy scan và được số hóa để biến đổi tín hiệu tương tự thành tín hiệu rời rạc

(lấy mẫu) và lưu vào máy tính đưới các định dạng file ảnh Ảnh thu được có thé

là ảnh trắng đen, ảnh màu, ảnh đa cấp xám Độ phân giải của ảnh ảnh hưởng rất

lớn đến kết quả OCR Ảnh thu được có độ phân giải 300dpi không phải là chuẩn

Trang 16

chính thức quy ước cho các ảnh đầu vàn của các hệ thống OCR nhưng cũng có

thể xem như một chuẩn tương đối tốt Tuy nhiên không phải ảnh có độ phân giải

cảng cao thỉ kết quá OCR càng tốt Do đó các hệ thống OCR khuyến nghị các bức ảnh dầu vào nên có độ phân giải từ 200dpi — 400dpi Để nâng cao hiệu quả

OCR, ngoài việc cổ gắng đám bảo đô phân giải của ảnh nằm trong khoâng tương

dỗi chấp nhận được, các bức ảnh thu dược cần tiến hành xử lý nhằm nâng cao

chất lượng trước khi đưa vào nhận dạng Quá trình nảy gọi là tiền xử lý ảnh

1.2.2 Tiền xử lý ảnh

Các bức ảnh thu được chất lượng thường không tết như ý muốn, có thể do

một số nguyễn nhân như: chất lượng của thiết bị thu ảnh (độ phân giải thấp), yếu

tố nguồn sáng, tải liệu ánh thực tế bị suy bién, ur thé chụp không đúng, Do vậy

1.2.2.1 Nhi phan hóa ảnh

Mục dích của nhị phân hóa là biến ảnh gốc thành ảnh nhị phân nhằm tăng

sự tương phần piữa nén (background) va các dối tượng (object hay forcground) Nếu dau vào là ảnh màu, trước khi nhị phân hóa cần chuyển sang ảnh xám theo

Trang 17

15

Việc tính toán chọn ngưỡng T phù hợp có ý nghĩa rất lớn trong quá trình nhị phân hóa Một số phương pháp xác định ngưỡng xám T phô biển và hiệu quả như Otsu (ngưỡng toàn cục), Niblack, Sauvola (ngưỡng cục bộ) Dưới đây trình bay phương pháp Otsu trong vi xác định ngưỡng xám toàn cục

Phuong phap Otsu[6]

Lược đỗ mức xám: là một hàm rời rạc cung câp tân suất xuất hiện của mỗi mức

Phương pháp Otsu được mô tả như sau

Bước 1: Chọn một giá trị ước lượng ngưỡng xám ban đầu T Thông

thường T được chọn là giá trị mức xám trung bình của bức ảnh Vi dụ trong lược đồ mức xám Hình 1.5, có thể chọn T =

Bước 2- Dùng ngưỡng T phân hoạch bức ảnh thành 2 phân vùng #;, Ro

(tương ứng 2 lược đồ mức xám mới Hinh 1.6)

= ree Tpixels 2 pixels ư>~— | plxels 4plxels

Hình 1.6 Phân ngưỡng trên lược đồ mức xảm

Trang 18

Ry, Ro

Bước 4: Tính toán lại giả trị ngưỡng T mới : T= 3 (uy, +4)

Bước 5- Lặp lại bước 2 đến bước 4 đến khi nào độ biến thiên của ngưỡng

T bẻ hơn giá trị e cho trước

| =>

LÏ LH"

Hình 1.7 Kết quả chọn ngưỡng xảm theo phương pháp Otsu

1.2.2.2 Chỉnh độ nghiêng và hướng

Ảnh thu được có thể bị nghiêng, bị xoay ngang đọc do vị trí đặt tài liệu

cần thu ảnh lêch vi trí đúng với thiết bị thu ảnh Với những bức ảnh như thế,

hiệu quả nhận dạng giảm đi rõ rệt Do đó trước khi nhận dạng, ta cần thực hiện việc chính lại độ nghiêng và hướng của trang ảnh Sau khi xác định được đô

nghiêng vả hướng chính xác của ảnh sẽ thực hiện việc quay ảnh về lại trang thái

đúng ban đầu Tuy nhiên ít nhiều chất lượng ảnh sẽ bị giảm sau khi quay

Một số phương pháp xác định độ nghiêng trang ảnh như phương pháp

hình chiều, phương pháp biến đổi Hough, phương pháp dựa trên các thành phần liên thông và một số phương pháp khác như phân tích độ lệch so với trục dọc, biến đổi Fourier, các phép toán hình thái[§] Nhiều phương pháp dò hướng cũng được đề xuất và áp dụng, một số tác giả như Caprari đưa ra năm 1999, Aradhyu

đưa ra năm 2005, Lu và một số tác giả khác đưa ra năm 2006[8] Việc dỏ tìm độ

nghiêng và hướng của trang ảnh có thể thực hiện riêng lẻ hoặc kết hợp đồng thời

với nhau Một phương pháp tiêu biểu cho việc kết hợp giữa việc đò độ nghiêng

và hướng được đưa ra bởi Breuel (vả một số tác giả khác) sử dụng mô hình hóa

hình học của các dòng text chữ viết Latinh[8]

Dỏ độ nghiêng vả quay ảnh thực hiện trong pham vi góc -45°, +45” (Hình

1.8) đò hướng đúng và quay ảnh theo các hướng 0°, 90°, 180°, 270” (Hình 1 9)

Part of the recognition process for any character|

fon Pros fp recognition engine isto identify how a word should be

= sie hạ avon ter} [segmented into characters The initial segmentation

inding jg clas Hal 6 oa be} output from line finding is classified first The rest of

SEP appyiog = tS hes ony 1, 8 St of The req, | {the word recognition step applies only to non-fixed-

* 10 ronstiyeg | [MRIEM,

Trang 19

‘war you

-paxy-uou o1 xjuo sardde days womans puon 2x

01804 Os pargssepa st Sumpury duty wou yndno

uonewauiBos JENUI 31 “31392 01M: J3MAUỂX

I4 JINME pI0w # A01 JIU20| 01 $J 3IIỂU9 01Uẫ0321

Part of the recognition process for any character

recognition engine is to identify how a word should be}

segmented into characters The initial segmentation

loutput from line finding is classified first The rest of

Ihe word recognition siep applies only to non-fixed:|

Việc xuất hiện nhiễu, đặc biệt ở biên ảnh (các thành phần không mong

muốn trong ảnh) làm tăng thời gian và giảm kết quả OCR bởi nhiễu trong ảnh

nếu không làm lọc đi sẽ được OCR như là kỷ tự bình thường, thâm chí làm sai

lệch nghiêm trọng kết quả với các vùng text thực sự

Page Frame

'Non-Textual Noise

Hình 1.10 Các vùng nhiễu trên ảnh văn ban[8]

Nhiễu trong tài liêu ảnh có thể do nhiều nguyên nhân: sự xuống cấp của

tải liệu theo thời gian sự tác động vật lý, hóa học của môi trường xung quanh; tác động ngoại cảnh trong quá trình chụp ảnh như ánh sáng không tốt Do đó

trước khi nhân dạng, ảnh cần áp dụng một vải kỹ thuật phủ hợp để giảm nhiễu

nhằm tạo ra một anh tốt hơn cho các bước phía sau của quá trình OCR

Nhiễu trong ảnh thực tế gồm nhiều loại song chúng ta thường chú ý và

xem xét đến 3 loại nhiễu chính: nhiễu công, nhiễu nhân, nhiễu xung [3]

- Nhiễu cộng thường phân bố khắp ảnh Nếu gọi ảnh quan sát (ảnh thu

được) là Xạ , ảnh gốc là X;¿e nhiễu là 7, anh thu được có thể biểu diễn

bởi:

Xqs= Xgic+ 7

Trang 20

- Nhiéu nhân thường được phân bế khắp ảnh và ảnh thu được sẽ biểu điễn

bởi công thức

Xo = Xuắc * 7

- Nhidgu xung thường gây đột biến tại một số điểm ảnh

Từ bắn chất của nhiễu (thường lương ửng với tần số cao) và từ sơ sở lý

thuyết lọc là: bộ lọc chỉ cho tin hiểu có tần số nào đó thông qua, do dé dé loc nhiễu người ta thường sử đụng bệ lọc thông thấp (thea quan điểm tần số không, gian) hay lấy tổ hợp tuyển tỉnh dễ sang băng (bộ lọc trung bình) Để làm nỗi

cạnh (ứng với tần số cao), người ta sử dụng bộ lọc thông cao loc Laplace[2]

De có nhiều loại nhiễu can thiệp vào quá trình xử lý ảnh nên cần nhiễu bộ

lọc thích hợp Với nhiễn cộng và nhiễu nhân ta dùng các bệ lọc thông thắp, trung bình và lọc đồng hình (homomorphie); với nhiễu xung ta đàng bộ lọc

trung vị, giả trung vị, lạc ngoài (Outlier)[2

Trong lạc Irung bình người Is ưu tiên cho các hướng dễ bảo vệ biển cúa

ảnh khỏi bị mờ khi lâm trơn ảnh Các kiểu mặt nạ dược sứ dụng tùy theo các

trường hợp khác nhau Các bộ lọc trên là bô lọc tuyến tính theo nghĩa điểm ảnh

ở tâm cửa số sẽ được thay bởi tố hợp các điểm lân cân chập với mặt nạ Lọc

thông thấp thường được dùng để làm trơn nhiễu

Các bộ lục phi Luyến cũng được dùng trong kỹ thuật tăng cường ảnh

Trong kỹ thuật này người ta dùng bộ lọc trung vị, giả trung vị, lọc ngoài Với bộ

lọc trung vị các điểm ảnh sẽ được thay thế bởi trung vị các điểm ảnh, còn lọc giả

trung vị sẽ dùng trung bình cộng của 2 giá trị “trưng vị” (trung bình cộng cúa max va min)[2]

1.2.3 Phân tích bố cục

‘lai liệu ảnh thường gồm các “vùng đối tượng” có nội dung, tích chất khác

nhau (vủng ảnh, vùng text, bảng biểu .) Phân tích bố cục tài liệu ảnh là một bước quan trọng được thực hiện để xác định cầu trúc, xác định các vùng đổi

tượng được bố trí trong tải liệu ảnh Cầu trúc của tải liệu ánh thường được quan

tâm trong việc phân tích bố cục là cầu trắc vật ly và oấu trúc lôgic

Cấu trúc vật lý chỉ ra vị trí, dường biên giữa các vùng đối tượng khác nhau Việc xác định cấu trúc vật lý có ý nghĩa rất lớn dối với lĩnh vực OƠR

trong việc chỉ lấy và xử lý các vùng text, giảm thời gian thực biện và tăng độ

chính xác kết quả.

Trang 21

19

Câu trúc logic chỉ chức năng của từng vùng đối tượng (ví dụ vùng tiêu đề,

vùng địa chỉ ) cũng như mỗi liên hệ logic giữa các vùng đối tượng ay Xác định

cấu trúc logic của tài liêu ảnh cũng có thể suy ra quy tắc đọc phủ hợp Ví dụ các

văn bản ngôn ngữ Latinh đoc từ trái qua phải, một số ngôn ngữ khác như Trung

Quốc, Nhật bản đọc từ phải qua trái Việc xác định cấu trúc logic thường thực

hiện sau khi xác định được cấu trúc vật lý

Hình 1.11 b-Cấu trúc vật l; c,d-Cấu trúc lôgic [3]

Các phương pháp phân tích bố cục tải liệu ảnh có thể chia làm hai loại

chính [3]

- Phuong phap co thir bac

* Phuong phap bottom-up: bắt đầu từ các phần tử nhỏ nhất (pixel, thành phân liên thông), thực hiện liên kết các phần tử liên quan để thành các

'Whitespace Analysis (1994), Docstrum (1993); Voronoi (1998); RAST (2002) —

bởi Thomas Breuel

1.2.4 Tách dòng và từ

Phân tích bố cục tài liệu ảnh xác định các block text Các thuật toán tìm

dòng sẽ chạy trên các block text để tách thành các dòng text (text-line) Một số

Trang 22

xoay ảnh nghiêng về vị trí đúng Do đó tránh cho chất lượng tài liệu ảnh bị giảm

xuống khi phải thực hiện thao tác xoay ảnh

‘Tay theo tính chất của các ký tư trong một từ cũng như vị trí tương đổi

của các từ trong một dòng text, các thuật toán tách từ được chọn một cách phủ

hợp để cắt các đòng text đã xác định ở trên thành các từ rời nhau

1.2.5 Huấn luyện và nhận dạng

Một hệ thống OCR thường chỉ cho ra kết quá rất hạn chế nếu như không được tập huần, một ảnh kỷ tự đủ hình dạng dơn giản cũng rất khó xác định đó là

ký tự gi nếu không có sự so sánh với ảnh ký tự mẫu cho trước Huấn luyễn chính

là làm cho hệ thống OCR có thể nhận biết một cách chính xác các ảnh của một

tập lớn các ký tự mẫu khác nhau về ngôn ngữ font chữ Các dẫu hiệu để nhận biết tập ảnh các ký tự này được hệ thống lưu lại theo một phương thức nào đó

thảnh đữ liệu tập huấn Khi muốn nhận dạng một ký tự, hệ thống dựa vào dữ

liệu tập huấn sẽ cho ra một ký tự tương ứng phù hợp nhất

liầu hết các thuật toản OCR thường có hai phần chính: trích chọn đặc

Một thành phân phụ cũng tham gia vào quá Irinh nhận dang

là quá trình xứ lý dựa trên ngữ cảnh |3]

trưng và phân Jo:

Trích chọn đặc trưng liên quan đến việc rút trích ra những thuộc tính của

đối tượng dưới dạng các đô đo Để biểu diễn một lớp ký tự phải xây dựng một

mô hình nguyên mẫu chung cho các lớp ký tụ Và do đó quá trình trích chọn đặc trưng sẽ cỗ găng tìm ra các đặc tính dựa trên nguyên mẫu đã xây dựng cho các lớp Các đặc trưng chung như số lượng các lễ hỗng trong ký tự, mặt lõm của

đường viền bên ngoài, sự nhô ra của điểm cao nhất và các đặc trưng nội tại, các

điểm cắt ngang, các điểm kết thúc, các góc sẽ được sử dụng Mỗi ảnh ký tự sẽ

trích ra các đặc trưng và phân loại chúng vào lớn lương img

Trong phương pháp phân loại dựa trên thống kế, những mẫu ảnh ký tự

được biểu diễn bằng các điểm đặc trưng trong không gian đa chiều Mỗi một

thành phần trong không pian da chiều biểu diễn cho một dé do dặc trưng Quá

trình phân loại sẽ chia không gian da chiều thành các vùng tương ứng với các lớp ký tự và chúng được gản nhần tương ứng

Nhận dạng dựa trên ngữ cảnh sử dụng thông tin từ các ký tự khác nhau

được nhận dạng trong một từ và ý nghĩa của từ khi lắp ghép ký Lự vào từ Công

việc nảy thường được kết hợp với lừ điển của ngôn ngữ nhận dạng Một công cụ

hiệu quả má các hệ thống OƠR hay sử dụng là mô hình ngôn ngữ thẳng kê

Trang 23

Trên thể giới cô Tắt nhiều loại chữ viết, mỗi nước hầu như đều có chữ viết

riêng, song có thé phân chia làm hai loại chỉnh là chữ Latinh và chữ tượng hỉnh

Do có quá nhiều loại chữ viết như trên nên khó có một phương pháp nhận dạng

hiệu quả đồng thời với tất cả các loại Đỗi với mỗi loại chữ, có thể thể hiện bởi

huấn luyện các loại font này cho quá trình nhận dạng cũng là một vấn dé nan

font chữ mới thường xuyên xuât hiện Do đó việc

giải

1.2.6 Xử lý kết quả

Kết quả nhận đạng it nhiều vẫn xuất hiện lỗi Lỗi có thế đo con người

trước nhận dang như lỗi đánh máy (lỗi này ít xảy ra) hoặc lỗi do nhận dang (phổ

tiến) Lỗi nhận dang cé thé chia thành một số loại:

-_ Lỗi phân đoạn: cl <z d,rn cy m

-_ Lỗi do nhằm lẫn hình dạng: e «> c,2 «> Z, 0 <> 0

-_ Lỗi do nhiễu (nhận dạng nhiễu thành các ký tự): ?⁄°

Với kết quả nhận dạng được, la thường áp dụng các biện pháp sửa lỗi để

tăng hiệu quả xử lý Nếu lỗi thuộc về loại lỗi chính tả (vi đụ #uu — hưu, mang —

marg, hOa — hoa), có thê ding các chương trình sửa lỗi chính tả phủ hợp với

từng ngôn ngữ Nếu là lỗi cú phap (vi du tink — tỉnh, vân — vẫn), thường người

doc sẽ duyệt lại và sửa bằng tay.

Trang 24

2.1 Céng nghé Tesseract OCR

2.1.1 Giới thiệu về Tesseract OCR

Tesseract[11,12] 1A céng nghé OCR được phát triển những năm từ 1984

đến 1994 ở ITP, bắt đầu như một dự án nghiên cứu Liên sĩ ở phòng thí nghiệm

Tuy dạt dược những kết quả nhất định nhưng lúc ấy vẫn chưa thể phát triển

thành sắn phẩm thương mại Cuối năm 2005, HP phát hành Tossoraot dưới dạng

mã nguồn mở và hiện tại được tập đoàn Google tài trợ phát triển Địa chỉ hiện tại cho mã nguồn Tesseract là http://code.google.com/p/teseract-ocr ‘Vesseract

được phát triên để chạy trên cả hệ điều hành nhân Linux và Windows Phiên bản

hiện tại là Tesseract 3.01 với một số nhà phát triển tiêu biểu như Ray Smith,

Thomas Breuel, Luc Vincent

Tir khi Tesseract OCR trở thành mã nguồn mỡ, nó được phát triển một cách nhanh chóng, hỗ trợ nhận dạng trên 30 ngôn ngữ khác nhau, độ chính xác

đang tiền tới lí lộ 100% trên một số ngôn ngữ với những ảnh văn ban chất lượng

Tuy vây dự án Tosscraot vẫn chưa phát triển một GUT cho người đúng sử dụng

công nghệ nảy Các tổ chức, cá nhân muốn sử dụng TosscracL OCR phải dùng

sơurce code cung cấp sẵn dem về tủy biến vả xây dựng thành GUI OCR riêng

cho minh Sản phẩm OCR dua trén ‘Tesseract cd thé phat hành lại dưới dạng mã nguồn mã bay sản phẩm thương mại Một số GUI đựa trên Tesseract:

VietOCR: Yéu cau Java hoje NET

gimageRteader: Yêu cầu python, PyGtk

OCRFeeder: Yéu cau linux, Python, pyGTK, Ghostscript, Unpaper

FreeOCR: Yêu cầu Windows, NET

PDF OCR X: Yêu cầu Mác O§ Ä 10.5/Windows với Java 1.6 ưỡ lên

Tảme @CR: Yêu cầu Windows, TmapelMagick

Oerivist Yéu cau Linux, Pascal

Lecfar: Yêu cầu Dython, Q4

?esseract-GUI: Yêu cầu python, pyŒIK

QTesseract: Yêu cầu QT4, cr+

Tiên cạnh các GUI cộng đồng quan tâm đến OCR đã xây đựng nhiều

wrapper cho Tesseract lương ứng lrên nhiều ngôn ngữ lập trình, thuận tiện cho

việc xây dựng các ứng dụng OCR nhanh chong ma không phải di sâu tìm hiểu

souree cođe TesscracL đã phải hành, Các wrappr TesscraoL được xây dựng để

tao ứng dụng OCR trên cả máy tỉnh và diện thoại di đông

Trang 25

#*ython: hhp:/code google.com/p/python-tesseract/

Ruby: : hitps://github com/dannnylo/rtesseract

Jeade google com/p/pylesser?

hitp://www pixel-technology com/freewarestessnet2/

hitp://cade google com/p/iesjeract (INI wrapper)

hitp:/Aess4j.sourceforge.nel/ JNA wrapper)

Ta còn có một số wrapper khác như:

fenseract-android-fools: tập các hàm Android API cho tesseract

Mobile OCR: Muc dich 14 tao ra img dung OCR (irén ảnh do camera

mobile chụp dược) trên nền tang Android Ung dung tương lai có thể áp

dựng cho những người có thị lực kém

Clarify: gitp OCR chi én file PDE Clarify lá một modun python

module, wrapper cho tcsscract-ocr, xpdÏ vả netpbm Yêu cầu: python,

tesscract-ocr, xpdf, netpbm

hOcr2Pdf NET 1a thu vién cho người lập trình lạo ra các ứng dụng dễ có

thể tìm kiếm trên file pdf Yêu cầu: NET 2.0 or higher, Vesseract 3 0,

JBig2.exe

ASeanHizCards: Giai phap cho scan business card trên mobile Yêu cầu

iPhone 4/iPhone 3/Android 2.0

customocr com: 1a dich va OCR dua trên Web

Tally-Ha: doc min hinh cho cdc site nhu la google book

Mayan EDMS: hé thong quan ly tai ligu voi tesseract

Olena: nén tang xử lý ảnh phổ biển và hiệu quả có sử dụng tesseract

Trang 26

2.1.2 Tesseract lam viée nhu thé nao?

Binary ‘age Layout Component Outlines

Le ‘Analysis In Text Regions

‘Adaptng Image

Thresholding

Organized Words Outlines

Output: Text

Hình 2.1 Kiến trúc Tesseract [11,12]

Quá trình làm việc của Tesseract [11,12] được mô tả tóm tắt như sau:

- Adapting thresholding:: thuc hién việc nhị phân hóa ảnh đầu vào (ảnh màu hoặc ảnh xám ) dựa trên việc xác định ngưỡng xám tương thích

Tesseract cung cấp 2 phương pháp xác định ngưỡng xám: ngưỡng øsu ngưỡng tương thích cục bộ ¿sodata

- Page layout analysis: thuat toán phân tích bổ cục trang qua việc dò tab- stop [13] được để xuất và cải đặt trong Tesseract bởi Ray Smith nhằm xác định các block text, vùng ảnh

Hinh 2.2 Ảnh trước và sau phân tích bỗ cục [13J

- Text-line finding: Thuit todn tim dòng text [10] được thiết kế đò các đỏng text trong block mà không phụ thuộc vào độ nghiêng của ảnh tài liệu

ban đầu Khi đó các block text được tổ chức thành các dòng text.

Trang 27

Hinh 2.3 Fitting cap line, mean line, baseline, descent line

Fixed pitch detection and chopping: Trén mỗi dòng text, Tesseract kiểm

tra để xác định có phải là fixed pitch text (phần text mả mỗi ký tự có độ rộng không đổi) hay không Tại những nơi xác định được fixed pitch text,

trồng giữa hàng chục và hàng đơn vị trong “11.9%” bằng khoảng trồng chung nhưng lại lớn hơn khoảng cách hai tlr “erated” va “junk”, Hay 1a

hầu như không có khoảng trống giữa các ký tự trong cdc tir “of” và

“financial”, Viée b6 cdc proportional text thanh cdc tir sir dung tinh chat

khoảng cách và khoảng cách mờ

of 9.5% annually while the Fed-

erated junk fund returned 11.9%

fear of financial collapse,

Hình 2 5 Sự khác nhau trong khoảng các từ Word recognition: Cac khối được chia cắt nhỏ nhất ở bước trên được gọi

là blod Quá trình nhân dang từ trải qua 2 pha Pha đầu tiên của quá trình nhận dạng cố gắng nhận dạng lần lượt từng blod Với mỗi blod thỏa mãn

sẽ được chuyển đến một phân lớp tương thích (adaptive classifier) như là

đữ liệu tập huấn Phân lớp tương thích được tăng thêm khả năng làm cho việc nhận dạng chính xác hơn cho những phần text phía sau Các từ không

được nhận dạng tốt ở pha thứ nhất sẽ được nhận dạng lại ở pha thứ hai bằng cách bổ các từ này thành các ký tự nhỏ hơn, nhận dạng và kết hợp

lại Trong quá trình nhận dạng từ, kết hợp với việc phân tích ngữ cảnh và

cú pháp để cho ra kết quả chính xác hơn.

Trang 28

Ứng dụng thực tế cho thấy Tesseract engine rat nhay cam ti su khác biệt

trong hình đáng font chữ I2o đó để có thể OCR tố

cho từng ngôn ngữ với nhiều loại font khác nhau đặc biệt là các font hay sử

dụng Để nhận dạng một ký tự đã được trích chọn, Tesseract sẽ tìm kiểm trong,

đữ liệu ngôn ngữ đã tập huấn va đưa ra ký tự tương đồng nhất Ngoài ra đữ liệu ngôn ngữ huấn luyện còn tham gia việc thay thể một số ký tự lỗi đựa theo ngữ

cảnh ngay sau khi nhận đạng Vi dụ: cũm = com, rr=n, <k, cl=d Luận văn

trình bảy vẫn để tập huấn ngôn ngữ cho Tesseract 3.0x]14]

các ngôn ngữ khác và các kỷ tự UTE-8 Với Tesseract 3.01, đã có 38 ngôn ngữ

được tập huẩn Tiếng Việt cũng đã có ngôn ngữ được tập huấn với các font cơ

ban như Times New Roman, Courier New, Vni-Times

Dễ huấn luyện cho một ngôn ngữ, cần tạo ra một số file dữ liệu trong thư

mục f#ssdafa, sau đó phép (móc nỗi với nhau) các file này thành một file đơn

Tén quy ude thudémg 1a languagecode file_name, language code tuan theo chuẩn

ISO 639-3 Tuy nhién language code có thể là một chuỗi bất kỳ Ví dụ những

file được tạo ra cha ngôn ngữ lếng Anh (3.00) gồm:

ở trên lại với nhau, dồng thời có một tablc sẽ lưu giữ vị trí lâm dấu hiệu nhận

sdata/eng =raineddata_ chỉ đơn giãn là ghép các file con

biết các file con ấy Thư vién couzil/cessdatamanagez.h trong source

code cung cấp danh sách các tên file hiện tại đã được chấp nhận

Trang 29

27

Quy trình tập huấn Tesseract được giới thiệu chỉ tiết trong trang hitp://code google com/p/wiki/Training Tesseract, tuy hoi phite tap nhumg cé thé tom tat các bước sau (chú ý trước khi tập huấn cai dit can Tesseract 3.0x vao

may),

© Tao ra anh tap huấn Với mỗi trang văn bản mẫu (nội dung văn bản là các

ký tự của một ngôn ngữ theo một loại font nhất định), in ra và quét ở độ phân

giải khoảng 300dpi tif, đặt tên scan.tif Cần đảm bảo tối thiểu số mẫu cho mỗi

ký tự, trung bình là 10 và 5 cho một số ký tự hiếm Với những ký tự tần số xuất hiện cao, ít nhất là 20 mẫu nhưng không quá 32 mẫu

© Tao ra box file cho mdi anh tap huấn Box file là một file text chứa danh

sách các ký tự trong ảnh tập huấn Để tạo ra box file, chạy câu lệnh

tesseract scan.ti£ scan batch.nochop makebox

luc nay sé sinh ra file scan.txt, kiém tra sửa lỗi ở file này, đặt lại tên thành

scan.box Tesseract chưa có GUI để tạo ra box file, có thể đùng một số GUI đã

có để hỗ trợ edit box file Dưới đây là danh sách một vài Box File Editor đã

được cộng đồng xây dựng

pytesseracttrainer Jan2011 Python, GTK2 yes

Tesseract-OCR boxfile AJAX editor Sep 2010 _ online tool no

¢ Với mỗi cặp file ảnh huấn luyện và box file tương ứng: chạy tesseract ở

chế độ huấn luyện để tạo ra file scan.tr Cú pháp

tesseracE scan.tif scan nobatch box.train

Trang 30

raector để tạo ra fileunicharset Cú pháp

unicharset_extractor scan.box

unicharset -

© Chạy lệnh mftraining để tạo ra các file inttemp, pffmtable va

Microfeat, chạy lệnh cnTraining để tạo ra file normproto Cú pháp:

mftraining scan.tr

¢ Tao ra từ điển (tùy chon); tao ra 2 file text UTF-8 là

frequent_words list vawords list Các file này chứa ít nhất một từ

Các từ trong 2 file này không nên trùng nhau Chạy lệnh word1ist2dawg để

taoracac file DAWG (Directed Acyclic Word G6raph) Củ pháp

wordlist2dawg words_list word-dawg

* Tao ra file text UTF-8 unicharambigs: file nay hé tro viéc thay thé

giữa các chuỗi nhập nhằng với nhau sau khi nhận dạng Ví dụm = xr n,

ai i ai = m Dinh dang file nay nhw sau:

+ Các dỏng tiếp theo, mỗi dòng chứa 5 trường riêng biệt: trường 1

chứa số từ của trường 2; trường 3 chứa số từ của trường 4;

+ Quy tắc thay thể: Các từ trong trường 2 sẽ được thay thể bằng các

từ trong trường 4 nếu trường 5 có giá trị l: ngược lại nều trường 5

có giá trị bằng 0, sự thay thế là không cần thiết

« Gộp tất cả các file lại với nhau: Đổi tên lại các tập tin vừa tạo ra với việc

thêm tiền tố languagecode , sau đó chạy lệnh combine_tessdata để

gộp các file lại với nhau Củ pháp

combine tessdata languagecode

© Chay OCR trén anh géc để kiểm chứng lại kết quả huấn luyện File

output txt là file kết quả OCR Cú pháp

tesseract scan.tif output -1 languagecode

Trang 31

29

2.2 Công nghệ Android

2.2.1 Giới thiệu về hệ điều hành android

Tháng 7/2005 Google mua lại công ty phát triển phần mềm Android Sau hơn 2 năm âm thầm phát triển, Google liên kết với các tập đoàn và công ty lớn

danh tiếng trên thể giới dưới danh hiệu "Open Handset Alliance" (OHA) cùng

nhau sảng tạo và phát triển công nghệ phần mềm "Android" cho các loại điện

thoại di động smartphone với một thị trường rất rộng lớn (3 tỷ máy) để cạnh tranh với những đối thủ lớn như Symbian, Microsoft, Palm

Từ khi công bố, Android[5,16] da la hé diéu hanh điện thoại di đông mở

nguồn mở miễn phí do Google phát triển dựa trên nền tảng mã nguồn mở Linux

OS (Kernel 2.6) cho máy di động và những phần mềm trung gian (middleware)

để hỗ trợ các ứng dụng mà người sử dụng cần đến Do đặc điểm của Android là bản quyền mã nguồn mở của nó rất thông thoáng (dựa trên nên tảng bản quyền của Apache V 2.0) nên bất kỳ một hãng sản xuất phần cứng nảo cũng đều có thể

tự do sử dụng hê điều hành Android cho thiết bị của mình, miễn là các thiết bị

ấy đáp ứng được các tiêu chuẩn cơ bản do Google đặt ra (có cảm ứng chạm, GPS, 3G ) Các nhà sản xuất có thể tự do thay đổi phiên bản Android trên may

của mình một cách tự do mà không cần phải xin phép hay trả bất kì khoản phí

nào nhưng phải đảm bảo tính tương thích ngược (backward compatibility) của

phiên bản chế riêng đó[20]

Những tính năng cơ bân hỗ trợ trên nền tảng Android[5,16]:

- Ung dung framework cho phép tái sử dụng và thay thể các thành phần

- May ảo Dalvik được thiết kế phủ hợp để chạy trên các thiết bị di động

- Trinh duyét web được tích hợp dựa trên mã nguồn mở WebKit

- _ Các thư viện đồ họa 2D, 3D mạnh mẽ và tối ưu

- Hé quan tri co sé dit liéu gon nhe SQLite

Trang 32

quen thuộc như MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, GIF

- H6 tro GSM, Bluetooth, EDGE, 3G và WiFi

- H6 tro camera, GPS, la ban

Đặc biệt Google phát triển Android SDK cung cấp các công cụ và bộ thư viên các hàm API cần thiết để phát triển ứng dụng cho nền tảng Android sử dụng ngôn ngữ lập trình java

Hệ điều hành Android ra đời đã tạo nên một cuộc cách mạng công nghệ

thực sự, cơ chế nguồn mở tạo ra nhiều thách thức và cơ hội cho những nhà phát

triển ứng dụng; đồng thời mang lại cho người dùng điện thoại sự cảm nhân khác biệt về 1 chiếc Smartphone, chưa đầy 2 năm kho phần mềm cho Android đã lên đến còn số hơn 30 nghìn ứng dụng Được nhiều tập đoàn công nghệ hàng đầu tham gia phát triển, nền tảng nảy ngày cảng nhiều tích năng nồi trội va day sang

tạo Phiên bản hệ điều hành Android mới nhất là 4.0 (tính đến ngày 30/08/2011) 2.2.2 Kiến trúc hệ thống

Kiến trúc Android[5,16,18] bao gồm các tầng và các thành phần trong đó

Tầng sẽ sử dụng các dịch vụ cung cấp bởi các tầng dưới Android được chia thành 4 tầng tầng nhân linux, tang Libraries va Android Runtime, tầng Application Framework, tang Application Cac thanh phan trong hệ điều hành Android được viết bằng cả C/C ++ va Java

Ngày đăng: 21/05/2025, 20:52

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
1] Dinh Điền (2005), Xi by ngedn nei te nhién, Gido trinh, NXB DIHQG TPHCM Sách, tạp chí
Tiêu đề: Xi by ngedn nei te nhién
Tác giả: Dinh Điền
Nhà XB: NXB DIHQG TPHCM
Năm: 2005
engine for multilingual OCR”, in Proceedings of the International Workshop on Multilingual OCR, 2009 Sách, tạp chí
Tiêu đề: Proceedings of the International Workshop on Multilingual OCR
Năm: 2009
17] htp://en.wikipedia.org, L[ [ [ Sách, tạp chí
Tiêu đề: Wikipedia
16] http:⁄developer.android.com Link
[19] hitp:/Aranslate. google. com/support Link
[21] http :/Avww.scannermart.vn. L 22 hitp:/www.vn-zoom.com Link
[12] R. Smith, D. Antonova, D. Lee, “Adapting the Tessoracl open source OCR Khác

HÌNH ẢNH LIÊN QUAN

Hình  1.1.  Ung  dung  OCR[21] - Luận văn xây dựng hệ thống nhận dạng và dịch trên thiết bị di Động
nh 1.1. Ung dung OCR[21] (Trang 10)
Hình  1.4  Quy  trình  cơ  ban  trong  mét  hé  thong  OCR - Luận văn xây dựng hệ thống nhận dạng và dịch trên thiết bị di Động
nh 1.4 Quy trình cơ ban trong mét hé thong OCR (Trang 15)
Hình  1.11.  b-Cấu  trúc  vật  l;  c,d-Cấu  trúc  lôgic  [3] - Luận văn xây dựng hệ thống nhận dạng và dịch trên thiết bị di Động
nh 1.11. b-Cấu trúc vật l; c,d-Cấu trúc lôgic [3] (Trang 21)
Hình  2.1.  Kiến  trúc  Tesseract  [11,12] - Luận văn xây dựng hệ thống nhận dạng và dịch trên thiết bị di Động
nh 2.1. Kiến trúc Tesseract [11,12] (Trang 26)
Hình  26.  Các  thành  viên  của  &#34;Liên  mình  di  động  mở&#34; - Luận văn xây dựng hệ thống nhận dạng và dịch trên thiết bị di Động
nh 26. Các thành viên của &#34;Liên mình di động mở&#34; (Trang 31)
Hình  2.8.  Mô  hình  client/server - Luận văn xây dựng hệ thống nhận dạng và dịch trên thiết bị di Động
nh 2.8. Mô hình client/server (Trang 35)
Hình  2.10.  Mô  hình  kiến  trúc  client/server  3  tằng  [25J - Luận văn xây dựng hệ thống nhận dạng và dịch trên thiết bị di Động
nh 2.10. Mô hình kiến trúc client/server 3 tằng [25J (Trang 37)
Hình  2.11.  Dich  vu  dich  thuét  online  Google  translate - Luận văn xây dựng hệ thống nhận dạng và dịch trên thiết bị di Động
nh 2.11. Dich vu dich thuét online Google translate (Trang 42)
Hình  3.2.  Giao  diện  chính  chương  trình  client - Luận văn xây dựng hệ thống nhận dạng và dịch trên thiết bị di Động
nh 3.2. Giao diện chính chương trình client (Trang 45)
Hình  3.4.  Ảnh  chụp  ở  chễ  độ  “full  mode” - Luận văn xây dựng hệ thống nhận dạng và dịch trên thiết bị di Động
nh 3.4. Ảnh chụp ở chễ độ “full mode” (Trang 46)
Hình  3.5.  Ảnh  chụp  ở  chế  độ  “block  mode” - Luận văn xây dựng hệ thống nhận dạng và dịch trên thiết bị di Động
nh 3.5. Ảnh chụp ở chế độ “block mode” (Trang 47)
Hình  3.9.  Giao  điện  tạo  liên  hệ  mới - Luận văn xây dựng hệ thống nhận dạng và dịch trên thiết bị di Động
nh 3.9. Giao điện tạo liên hệ mới (Trang 48)
Hình  3.12.  Ảnh  có  bỗ  cục  và  phân  bỗ  màu  sắc phức  tạp - Luận văn xây dựng hệ thống nhận dạng và dịch trên thiết bị di Động
nh 3.12. Ảnh có bỗ cục và phân bỗ màu sắc phức tạp (Trang 50)
Hình  3.13.  Ảnh  gốc  sau  khi  nhị  phân  hóa  và  làm  sạch - Luận văn xây dựng hệ thống nhận dạng và dịch trên thiết bị di Động
nh 3.13. Ảnh gốc sau khi nhị phân hóa và làm sạch (Trang 51)
Hình  4.1.  Kết  quả  thực  nghiệm  OCR  trén  Tesseract  engine - Luận văn xây dựng hệ thống nhận dạng và dịch trên thiết bị di Động
nh 4.1. Kết quả thực nghiệm OCR trén Tesseract engine (Trang 57)

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

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

w