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

(Luận văn thạc sĩ) Nhận dạng ký tự quang cho văn bản có cấu trúc, ứng dụng trong đọc chứng minh thư nhân dân

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 (4.46 MB, 55 trang )

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

NGUYỄN ĐÌNH MẬU

NHẬN DẠNG KÝ TỰ QUANG CHO VĂN BẢN CÓ CẤU TRÚC,
ỨNG DỤNG TRONG ĐỌC CHỨNG MINH THƯ NHÂN DÂN

LUẬN VĂN THẠC SĨ KỸ THUẬT
(Theo định hướng ứng dụng)

HÀ NỘI - 2022


2

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

NGUYỄN ĐÌNH MẬU

NHẬN DẠNG KÝ TỰ QUANG CHO VĂN BẢN CÓ CẤU TRÚC,
ỨNG DỤNG TRONG ĐỌC CHỨNG MINH THƯ NHÂN DÂN
Chuyên ngành: Hệ thống thông tin
Mã số: 8.48.01.04

LUẬN VĂN THẠC SĨ KỸ THUẬT
(Theo định hướng ứng dụng)

NGƯỜI HƯỚNG DẪN KHOA HỌC: TS. NGUYỄN TRỌNG KHÁNH


HÀ NỘI - 2022


3

BẢN CAM ĐOAN
Tôi cam đoan đã thực hiện kiểm tra mức độ tương đồng nội dung luận văn
qua phần mềm DoIT một cách trung thực và đạt kết quả mức độ tương đồng là:
17% toàn bộ nội dung luận văn. Bản luận văn kiểm tra qua phần mềm là bản
cứng luận văn đã nộp để bảo vệ trước Hội đồng. Nếu sai tơi xin chịu các hình
thức kỷ luật theo quy định hiện hành của Học viện.
Hà Nội, ngày 09 tháng 02 năm 2022
HỌC VIÊN CAO HỌC
(ký và ghi rõ họ tên)

Nguyễn Đình Mậu


4

LỜI CẢM ƠN
Trước tiên, tôi xin bày tỏ lời cảm ơn sâu sắc đến các thầy, cô giáo trong
khoa sau Đại học nói riêng và các thầy cơ giáo của trường Học viện Cơng nghệ
Bưu chính viễn thơng nói chung lời cảm ơn chân thành nhất.
Đặc biệt, tôi xin gửi lời cảm ơn sâu sắc tới TS. Nguyễn Trọng Khánh
người đã tận tình chỉ bảo, hướng dẫn tơi trong suốt q trình tìm hiểu, nghiên
cứu để hồn thành luận văn tốt nghiệp của mình. Nếu khơng có những hỗ trợ
về kiến thức chun mơn của thầy thì chắc chắn tơi khơng thể hồn thành đúng
thời hạn.
Đồng thời, tơi xin cảm ơn tới gia đình, những người thân u ln bên

cạnh, động viên, giúp đỡ tơi trong suốt q trình học tập. Bên cạnh đó tơi cũng
xin gửi lời cảm ơn đến các thành viên trong lớp M19CQIS01-B đã chia sẻ
những kinh nghiệm, kiến thức quý báu cho tôi trong quá trình nghiên cứu thực
hiện luận văn.
Thời gian thực hiện luận văn, kinh nghiệm về các lĩnh vực nghiên cứu
của bản thân cịn hạn chế, luận văn cũng cịn thiếu sót, rất mong nhận được
những ý kiến đóng góp của Quý thầy cơ và các bạn để tơi có thể hồn thiện
luận văn một cách tốt nhất./.
Hà Nội, ngày 09 tháng 02 năm 2022


5

Mục lục
CHƯƠNG I : GIỚI THIỆU BÀI TOÁN

9

1.1. Tổng quan về nhận dạng ký tự quang

9

1.2. Các bước cơ bản bản nhận dạng ký tự quang học

10

CHƯƠNG 2: KỸ THUẬT HỌC SÂU TRONG PHÂN TÍCH CHỨNG MINH THƯ 12
2.1. Mơ tả bài toán nhận dạng chứng minh nhân dân

12


2.2. Các phương pháp sử dụng để thực hiện bài toán nhận dạng ký tự quang học

14

2.3. Xử lý ảnh

15

2.3.1. Phép biến đổi TPS

15

2.3.2. Sử dụng biến đổi Hough

17

2.3.3. Mơ hình mạng học sâu SSD-V2

18

2.4. Xác định vùng quan tâm dựa trên cấu trúc văn bản

22

2.4.1 Mơ hình CRAFT

22

2.4.2. Mạng bộ nhớ dài - ngắn


26

2.4.3. Cơ chế Attention

30

2.5. Nhận diện ký tự

31

2.5.1. Nhược điểm của mơ hình RNN

31

2.5.2. Phương pháp Transformer

32

2.6. Phương pháp đề xuất

34

2.6.1. Xác định 4 góc của chứng minh thư sử dụng mơ hình SSD

34

2.6.2. Xác định từ trong chứng minh thư dùng mơ hình CRAFT

37


2.6.3. Nhận diện ký tự sử dụng mơ hình vietOCR[18]

38

CHƯƠNG 3: THỰC NGHIỆM VÀ ĐÁNH GIÁ KẾT QUẢ

42

3.1. Tập dữ liệu

42

3.2. Thiết lập thực nghiệm

42

3.3. Phân tích kết quả:

49

KẾT LUẬN

50

DANH SÁCH TÀI LIỆU THAM KHẢO

51



6

Danh sách hình ảnh
Hình 1: Văn bản có cấu trúc

10

Hình 2: Văn bản phi cấu trúc

10

Hình 3: Sơ đồ cơ bản của một hệ thống OCR

11

Hình 4: Kết quả nhận diện hộp giới hạn sử dụng mơ hình xác định ký tự

11

Hình 5: Chứng minh thư mẫu cũ

12

Hình 6: Hộp giới hạn của vùng chữ nhận diện được

13

Hình 7: Kết quả nhận diện text với từng trường thông tin trong chứng minh thư

14


Hình 8: Pipeline của hệ thống nhận diện ký tự quang học sử dụng mạng mạng thần
kinh đồ thị
14
Hình 9: Minh họa phép biến đổi TPS

15

Hình 10: Minh hoạ q trình tính tốn điểm p’

17

Hình 11: Sử dụng biến đổi Hough trong xử lý góc nghiêng.

18

Hình 12: Mơ hình mạng SSD với tầng cơ sở VGG-16

18

Hình 13: Kiến trúc trúc của mạng thần kinh dự đốn đa kích thước trong mơ hình SSD. 19
Hình 14: Đánh giá độ chính xác của kết quả dự đốn hộp giới hạn

20

Hình 15: Ma trận đặc trưng tương ứng với nhiều kích thước bản đồ đặc trưng

22

Hình 16: Mơ hình của mạng CRAFT


23

Hình 17: Ảnh đầu vào

24

Hình 18: Bản đồ vùng

24

Hình 19: Bản đồ tương quan

25

Hình 20: Hình giới hạn màu đỏ

25

Hình 21: Ảnh kết quả nhận diện bị nghiêng, méo

26

Hình 22: Sơ đồ cơ bản mạng RNN

27

Hình 23: Sơ đồ cơ bản mạng LSTM

27


Hình 24: Cổng “quên” trong mạng LSTM

28

Hình 25: Cổng “đầu vào” trong mạng LSTM

28

Hình 26: Cập nhật trạng thái mới cho tế bào LSTM

29


7

Hình 27: Cập nhật đầu ra cho tế bào LSTM

29

Hình 28: Mơ hình RNN và LSTM

31

Hình 29: Mơ hình Transformer điển hình

33

Hình 30: Logic của mơ hình transformer


34

Hình 31: Hình ảnh chứng minh thư đầu vào

35

Hình 32: Kết quả xác định 4 góc của chứng minh thư

36

Hình 33: Sơ đồ giải thuật tìm 4 góc

36

Hình 34: Chứng minh thư sau khi đã được cắt

37

Hình 35: Kết quả xác định ký tự của mơ hình CRAFT

37

Hình 36: Kết quả sau khi sử dụng mơ hình biến đổi TPS

38

Hình 37: Minh họa mơ hình attention OCR

38


Hình 38: Phép biển đổi làm phẳng để tạo ra ma trận đặc trưng mới

39

Hình 39: Kiến trúc mạng Transformer OCR

40

Hình 40: So sánh giữa mơ hình Transformer và LSTM.

41

Hình 41: Dữ liệu huấn luyện tự sinh.

41

Hình 42: Hình ảnh cần nhận diện.

41

Hình 43: Kết quả nhận diện và thời gian xử lý

41


8

Danh mục từ viết tắt
STT


Ký hiệu chữ viết tắt

Chữ viết đầy đủ

1

OCR

Optical Character Recognition

2

LSTM

Long-short term memory

3

NLP

Natural language processing

4

CRAFT

Character-region awareness for text detection

5


CTC

Connectionist Temporal Classification

6

CRNN

Convolutional Recurrent Neural Network

7

ASTER

Attentional Scene Text Recognizer

8

MORAN

Multi-object rectified attention network

9

SSD

Single shot multibox detector

10


VGG

Visual Geometry Group

11

IoU

Intersection of Union

12

TPS

Thin plate spline

13

RNN

Recurrent neural network

14

GRU

Gated recurrent units


9


CHƯƠNG I : GIỚI THIỆU BÀI TOÁN
1.1. Tổng quan về nhận dạng ký tự quang
Chúng ta sống trong thời đại khi bất kỳ tổ chức hoặc công ty nào mở rộng quy
mô và để phù hợp phải thay đổi cách họ nhìn vào cơng nghệ và thích nghi với sự thay
đổi nhanh chóng của cơng nghệ. Chúng ta đã biết Google đã số hóa sách như thế nào
hoặc cách Google Earth sử dụng NLP để xác định địa chỉ hoặc làm thế nào có thể đọc
văn bản trong các tài liệu kỹ thuật số như hóa đơn, giấy tờ pháp lý... Đó chính là bài
tốn nhận dạng ký tự quang học (OCR) được thực hiện trong luận văn này. Nhận
dạng ký tự quang học 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,
nhận dạng ký tự quang học có khả năng số hóa nhiều tài liệu khác nhau như: hóa đơn,
hộ chiếu, danh thiết, tài liệu ... Bằng cách áp dụng nhận dạng ký tự quang học, quy
trình số hóa tài liệu, tìm kiếm và chỉnh sửa sẽ được thực hiện một cách tự động, tiết
kiệm không gian lưu trữ và thuận tiện trong việc tra cứu thông tin.
Hiện nay đối với ảnh chụp văn bản cần nhận dạng, ta có thể chia ra làm 2 loại :
- Văn bản có cấu trúc: Văn bản trong một tài liệu đánh máy thường xuất hiện
trong những nền tảng tiêu chuẩn, có hàng lối, phông chữ tiêu chuẩn. Các văn bản này
thường gặp ở những giấy tờ tùy thân như chứng minh thư nhân dân, giấy khai sinh,
hộ chiếu hay có thể là trang sách. Đối với loại dữ liệu này, việc trích xuất đặc trưng,
xác định vị trí ký tự và nhận dạng ký tự sẽ khơng khó nếu văn bản khơng bị mờ, nhòe
hoặc điều kiện ánh sáng quá thiếu.
Văn bản phi cấu trúc: Văn bản tại các vị trí ngẫu nhiên trong một khung cảnh
tự nhiên. Văn bản thưa thớt, không có cấu trúc hàng thích hợp, nền phức tạp, tại vị trí
ngẫu nhiên trong ảnh và khơng có phơng chữ chuẩn. Những văn bản này có thể là
biển hiệu quảng cáo, hóa đơn, biển số xe hoặc chữ viết tay. Trong phạm vi luận văn,
các kí tự nằm trên sản phẩm có thể được gọi là văn bản phi cấu trúc vì chúng có màu
sắc, vị trí ngẫu nhiên trong ảnh.



10

Hình 1: Văn bản có cấu trúc

Hình SEQ Hình \* ARABIC 1: Văn bản có cấu trúc

Hình SEQ Hình \* ARABIC 2: Văn bản phi cấu trúc
Hình 2: Văn bản phi cấu trúc

1.2. Các bước cơ bản bản nhận dạng ký tự quang học
Trước khi có sự bùng nổ của công nghệ học sâu vào năm 2012, nhận dạng ký
tự quang học vẫn là một vấn đề thách thức đặc biệt là khi hình ảnh văn bản được chụp
trong mơi trường khơng bị giới hạn. Khi hình ảnh chứa nền phức tạp, nhiễu, phơng
chữ khác nhau và biến dạng hình học trong hình ảnh. Điều đó được thể hiện rất rõ
trong các trường hợp hóa đơn khách hàng chụp gửi lại cho chúng ta có thể ở trong
những điều kiện rất xấu như lóa (do giấy in hóa đơn rất bóng), bị nhàu nát, khơng đủ
sáng, bị ướt... Chính trong những tình huống như vậy, nhận dạng ký tự quang học kết
hợp cùng học sâu là biện pháp tốt nhất được sử dụng để nhận dạng văn bản.


11

Hình 3: Sơ đồ cơ bản của một hệ thống nhận dạng ký tự quang học
Bất kỳ một hệ thống nhận dạng ký tự quang học nào đều tuân theo 3 bước sau:
- Tiền xử lý ảnh: Trước khi xác định được vị trí các kí tự, ảnh cần được tiền xử
lý để đạt được một số yêu cầu nhất định. Ảnh có thể được nâng cao chất lượng, phân
cụm để giảm số lượng giá trị trong ảnh, lọc nhiễu sử dụng các bộ lọc như Gaussian,
Median hoặc có thể đưa về hệ màu đen trắng đối với những bài tốn có nền đơn giản
như phân loại biển số xe để giảm chiều dữ liệu cũng như kích thước dữ liệu. Đối với

một số bài tốn sử dụng cơng nghệ học sâu, ảnh sẽ được thay đổi kích thước nhất
định để phù hợp với mơ hình. Q trình tiền xử lý này cần thực hiện sao cho giảm
nhiễu và các thông tin ngoại lai nhiều nhất tuy nhiên vẫn phải giữ lại được những
thơng tin cần thiết cho q trình xác định và nhận diện sau này.
- Phát hiện ký tự: Sau khi ảnh được tiền xử lý, ta sẽ tiến hành xác định vị trí của ký
tự hoặc nhóm các kí tự có cấu trúc giống nhau. Mục tiêu của nhận diện ký tự tương tự
như các bài toán xác định vật thể với vật thể đặc thù ở đây là vị trí của các ký tự. Hiện
nay, với sự bùng nổ của công nghệ học sâu, các mô hình được sinh ra để giải quyết những
bài tốn với độ chính xác cao lên tới hơn 90% có thể được kể đến như DB, Text
Fusnet[13], CRAFT[14],.. Các mơ hình này cho kết quả nhận diện tốt trên các bộ văn
bản có cấu trúc lẫn những văn bản phi cấu trúc, tiêu biểu như nhận diện biển báo (một
loại kĩ thuật trên không chỉ thể hiện được kết quả tốt trên các bộ văn bản có cấu trúc mà
cịn ở cả các loại văn bản phi cấu trúc tiêu biểu nhất là biển báo - loại văn bản cảnh).

Hình 4: Kết quả nhận diện hộp giới hạn sử dụng mô hình xác định ký tự


12

- Nhận diện ký tự: Sau khi đã xác định các các hộp giới hạn, từng hộp sẽ được
xử lý để nhận dạng được các kí tự có trong vùng ảnh đó đó và ghép thành từ cụ thể.
Hiện nay, một số công cụ thông dụng thường được sử dụng Tesseract, Google API
tuy nhiên khi gặp những trường hợp ảnh bị mờ hoặc méo thường sẽ cho ra kết quả
không được tốt. Các mơ hình học sâu hiện nay thường dùng cho bài tốn này như
CRNN, ASTER, MORAN, DAN có cấu trúc chung là biến đổi ảnh - trích xuất đặc
trưng - mơ hình tuần tự - dự đốn. Trong đó mơ hình tuần tự và dự đốn là 2 phần
đóng vai trị quan trọng nhất của một mơ hình nhận dạng ký tự với các kiến trúc nổi
tiếng là LSTM, CTC và Attention.

CHƯƠNG 2: KỸ THUẬT HỌC SÂU TRONG PHÂN TÍCH CHỨNG MINH THƯ

Phần lớn các mơ hình dùng cho nhận diện ký tự hiện nay đều dựa trên cơng thức:
Biến đổi ảnh - Trích xuất đặc trưng - Mơ hình hóa tuần tự - Dự đốn. Với mơ hình
SOTA trong những năm gần đây là TPS- ResNet - BiLSTM - Attention, quyết định sử
dụng mơ hình này phục vụ cho bài toán Text Recognition cho chứng minh thư.
2.1. Mơ tả bài tốn nhận dạng chứng minh nhân dân

Hình 5: Chứng minh thư mẫu cũ


13

Với bài toán nhận diện ký tự quang học cho dữ liệu là ảnh chứng minh thư, có
rất nhiều quy trình được đề xuất, trong đó thường bao gồm các bước sau:
- Xử lý ảnh, xác định vùng quan tâm chưa chứng minh thư. Do ảnh chụp chứng
minh thư thường bị nghiêng, chéo, ta cần phải chuẩn hóa ảnh trước khi cho vào mơ
hình nhận diện. Các phương pháp thường được sử dụng là: xác định biên của chứng
minh thư, xác định góc của chứng minh thư. Xác định biên của chứng minh minh thư
có thể sử dụng các kỹ thuật như tìm đường biên trong xử lý ảnh, phân vùng đối tượng,
xác định các góc của chứng minh thư. Từ đó, tác giả có thể xác định được tâm xoay
và ma trận chuyển vị để từ đó thu được ảnh vùng quan tâm ở vị trí tốt được sử dụng
cho phần nhận diện ký tự ở bước 2.
- Xác định hộp giới hạn của từng dòng ký tự của ảnh. Các hộp giới hạn ứng với
từng dòng ký tự của ảnh. Phần xác định ký tự này có thể sử dụng các mơ hình nhận
diện vật thể phổ biến hoặc dùng các mơ hình chun biệt cho các bài toán xác định
văn bản cảnh như: CTPN[15], EAST[16], Differentiable Binarization[17], CRAFT,...
- Nhận diện nội dung các ký tự trong các hình giới hạn ký tự. Phần nhận dạng ký tự
có thể sử dụng các framework như Tesseract hoặc các mô hình về nhận dạng ký tự
văn bản cảnh: CRNN-CTC loss, Attention-OCR,...
Ví dụ 1 ảnh sau khi thực hiện qua 2 bước xác định góc và xác định ký tự.


Hình 6: Hộp giới hạn của vùng chữ nhận diện được


14

Hình 7: Kết quả nhận diện text với từng trường thơng tin trong chứng minh thư
Pipeline của mơ hình được mơ tả như sau

Ảnh
đầu
vào

Tách
chữ

Trích
xuất
đặc
trưng


hình
hóa
đồ thị

Phân
loại nốt
trong đồ
thị


Tách
đối
tượng

Hình 8: Pipeline của hệ thống nhận diện ký tự quang học sử dụng mạng mạng thần
kinh đồ thị.
- Sử dụng mạng thần kinh đồ thị để xác định các trường thông tin. Đầu tiên, ta
cần nhận diện được chữ trong văn bản, các chữ này được đưa qua mơ hình trích xuất
đặc trưng. Những đặc trưng này biểu diễn mối liên hệ giữa vị trí của các từ trong văn
bản với nhau. Những dữ liệu này được đưa qua một mơ hình đồ thị để phân loại đặc
trưng này thuộc những nốt nào. Các nút ở đây chính là các hộp giới hạn thu được sau
bước xác định ký tự. Dựa vào kết quả phân loại này, ta sẽ có kết quả cuối cùng là các
trường thông tin của văn bản.
2.2. Các phương pháp sử dụng để thực hiện bài toán nhận dạng ký tự quang học
Phương pháp học sâu hiện nay đã đạt được nhiều thành tựu trong ứng dụng nhận
dạng, xử lý hình ảnh. Do đó, trong luận văn này, tác giả không sử dụng phương pháp
học máy cổ điển mà sử dụng phương pháp học sâu để xử lý bài tốn nhận dạng ký tự
quang học cho văn bản có cấu trúc ứng dụng trong đọc thông tin trong chứng minh thư.


15

Bài toán nhận diện ký tự quang học được chia làm ba phần:
- Xử lý ảnh, phát hiện vùng ROI của chứng minh thư: sử dụng phương pháp học
sâu để xác định góc của chứng minh thư. Từ đó, xoay thẳng chứng minh thư để tăng
chất lượng nhận diện ký tự.
- Xác định vùng vùng quan tâm dựa trên cấu trúc văn bản bản sử dụng mơ hình
CRAFT. Vùng quan tâm sẽ chứa từng ký tự của văn bản, bốn góc của vùng quan tâm
tạo thành hình chữ nhật. Vùng ảnh này sẽ được sử dụng ở bước sau: nhận diện ký tự.
- Nhận diện ký tự: mơ hình transformer đã cải thiện khả năng nhận diện ký tự

trong văn bản có ngữ nghĩa so với mơ hình RNN và mơ hình LSTM. Mơ hình này
transformer được sử dụng trong bài tốn này dựa trên mơ hình vietocr.
2.3. Xử lý ảnh
Trong thực tế, khi chụp chứng minh thư có thể bị nghiêng hoặc cong. Chính vì
vậy, để chỉnh các ảnh bị cong hoặc nghiêng về ảnh bình thường, có nhiều các phương
pháp sử dụng
2.3.1. Phép biến đổi TPS

Hình 9: Minh họa phép biến đổi TPS
Mạng TPS sẽ có đầu vào là 2 tập điểm mốc tương ứng nhau, mỗi tập gồm K
điểm thuộc ảnh đầu vào và ảnh rectified. Do yêu cầu của ảnh rectified là các chữ phải
thẳng, vì thế K điểm mốc thuộc ảnh đầu ra sẽ có vị trí cố định dọc theo phía trên và
phía dưới ảnh ( các điểm màu tím). Khi đó, khi chúng ta lấy các điểm mốc ở ảnh đầu
vào dọc theo phía trên và phía dưới các kí tự (các điểm màu xanh), phép đổi TPS sẽ
cho ra ảnh rectified là chữ đã được chỉnh méo.












×