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

Kỹ thuật nhận dạng chữ số dựa vào mạng nơron trong nhập điểm tự động1

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 (1.64 MB, 64 trang )

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

TRẦN NGỌC MINH

KỸ THUẬT NHẬN DẠNG CHỮ SỐ DỰA VÀO
MẠNG NƠRON TRONG NHẬP ĐIỂM
TỰ ĐỘNG
Chuyên ngành: Khoa học máy tính
Mã số: 60 48 0101

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

Người hướng dẫn khoa học: PGS.TS ĐỖ NĂNG TOÀN

Thái Nguyên – năm 2015


ii

LỜI CẢM ƠN
Trước hết tôi xin gửi lời cảm ơn sâu sắc đến thầy hướng dẫn khoa học
PGS.TS Đỗ Năng Toàn về những chỉ dẫn khoa học, định hướng nghiên cứu
và tận tình hướng dẫn tôi trong suốt quá trình làm luận văn.
Tôi cũng xin cảm ơn các Thầy trong viện Công Nghệ Thông Tin, các
Thầy Cô trong trường Đại học Công Nghệ Thông Tin và Truyền Thông - Đại
học Thái Nguyên đã quan tâm chỉ bảo và trực tiếp giảng dạy, giúp đỡ trong
suốt quá trình học tập và nghiên cứu.
Tôi xin chân thành cảm ơn lãnh đạo các phòng, ban trong trường Cao
đẳng Cộng đồng Bắc Kạn đã tạo điều kiện cho tôi học tập và nghiên cứu đề


tài này.
Cuối cùng, tôi xin cảm ơn gia đình và bạn bè, những người đã luôn ủng
hộ và động viên tôi để tôi yên tâm nghiên cứu luận văn này.
Trần Ngọc Minh


iii

LỜI CAM ĐOAN
Tôi xin cam đoan đây là công trình của riêng tôi, dưới sự hướng dẫn
của PGS.TS Đỗ Năng Toàn. Các số liệu và kết quả nghiên cứu trong luận văn
này là trung thực và không trùng lặp với các đề tài khác.
Mọi tham khảo trong luận văn đều được trích dẫn rõ ràng tên tác giả,
tên công trình, thời gian, địa điểm công bố.
Mọi sao chép không hợp lệ, vi phạm quy chế đào tạo hay gian trá tôi
xin hoàn toàn chịu trách nhiệm.
Trần Ngọc Minh


iv

MỤC LỤC
LỜI CẢM ƠN ................................................................................................. i
LỜI CAM ĐOAN ......................................................................................... iii
MỤC LỤC .................................................................................................... iv
DANH MỤC HÌNH ẢNH ............................................................................. vi
MỞ ĐẦU ....................................................................................................... 1
CHƯƠNG 1. KHÁI QUÁT VỀ XỬ LÝ ẢNH VÀ NHẬN DẠNG ................ 3
PHIẾU ĐIỂM................................................................................................. 3
1.1. Khái quát về xử lý ảnh [1] ....................................................................... 3

1.1.1. Các giai đoạn của một quá trình xử lý ảnh. ........................................ 3
1.1.2. Mô tả ảnh .......................................................................................... 5
1.1.3. Một vấn đề trong xử lý ảnh ................................................................ 7
1.2. Nhận dạng phiếu điểm ........................................................................... 15
CHƯƠNG 2. MẠNG NƠRON VÀ NHẬN DẠNG PHIẾU ĐIỂM .............. 20
2.1. Mạng nơron nhân tạo[5] ........................................................................ 20
2.1.1. Mô hình toán học............................................................................. 21
2.1.2. Phân loại.......................................................................................... 22
2.1.3. Các đặc trưng của mạng nơron nhân tạo .......................................... 24
2.1.4. Một số mô hình mạng nơron cơ bản[5][6] ....................................... 27
2.2. Kỹ thuật nhận dạng phiếu điểm ............................................................. 31
2.2.1. Hiệu chỉnh độ dịch chuyển .............................................................. 31
2.2.2. Hiệu chỉnh góc lệch ......................................................................... 33
2.2.2.1. Phương pháp chiếu nghiêng....................................................... 33
2.2.2.2. Phương pháp biến đổi Hough .................................................... 35
2.2.2.3. Phương pháp láng giềng gần nhất .............................................. 37
2.3. Nhận dạng phiếu điểm dựa vào mạng nơron .......................................... 38
2.3.1. Thiết kế mạng nơron........................................................................ 38


v

2.3.2. Lược đồ huấn luyện mạng ............................................................... 41
2.3.3. Thuật toán BackPropagation[9] ....................................................... 42
2.3.4. Nhận dạng và đưa vào cơ sở dữ liệu ................................................ 44
CHƯƠNG 3: CHƯƠNG TRÌNH THỬ NGHIỆM ........................................ 45
3.1. Huấn luyện ............................................................................................ 45
3.1.1. Lựa chọn mẫu .................................................................................. 45
3.1.2. Kết quả huấn luyện .......................................................................... 49
3.2. Nhận dạng chữ số .................................................................................. 49

3.3. Phân tích và lựa chọn công cụ ............................................................... 50
3.3.1. Phân tích và chọn công cụ .............................................................. 50
3.3.2. Chương trình thử nghiệm ................................................................ 51
PHẦN KẾT LUẬN ...................................................................................... 55
KẾT LUẬN VÀ KIẾN NGHỊ ...................................................................... 56
TÀI LIỆU THAM KHẢO ............................................................................ 57


vi

DANH MỤC HÌNH ẢNH
Hình 1.1: Ảnh gốc
Hình 1.2: Ảnh đã giảm độ sáng
Hình 1.3. Ảnh đã được tăng cường độ sáng
Hình 1.4: Ảnh gốc
Hình 1.5: Ảnh đã giảm độ tương phản
Hình 1.6: Ảnh đã được tăng độ tương phản
Hình 1.7: Mô phỏng thuật toán lọc trung vị để loại bỏ nhiễu.
Hình 1.8: Mô tả phép quay ảnh
Hình 1.9: Mẫu bảng điểm thu nhận từ máy quét
Hình 1.10: Bức ảnh trước khi điều chỉnh kích thước
Hình 1.11: Bức ảnh sau khi điều chỉnh kích thước thành M*N
Hình 2.1: Mô hình toán học mạng nơron
Hình 2.2: Mô hình dữ liệu tổng quát
Hình 2.3: Mô hình thuật toán học có giám sát
Hình 2.4: Mô hình mạng Hopfield
Hình 2.5: Mô hình mạng ABAM
Hình 2.6: Mô hình tổng quát mạng Perceptron
Hình 2.7: Mô hình tổng quát mạng Back Propagation
Hình 2.8: Mô hình mạng nơron ngược hướng

Hình 2.9: (a) là ảnh mẫu (b) là ảnh cần nhận dạng
Hình 2.10: Mô hình biểu đồ tần suất của ảnh mẫu và ảnh cần nhận dạng, (a)
ảnh mẫu,(b) ảnh cần nhận dạng, (c) lược đồ tần suất của ảnh mẫu và ảnh cần
nhận dạng được vẽ chồng lên nhau
Hình 2.11: Các hình chiếu theo chiều thẳng đứng và nằm ngang của văn bản
Hình 2.12: Biểu đồ minh hoạ phương pháp người láng giềng gần nhất
Hình 2.13: Cấu trúc mạng nơron


vii

Hình 2.14: Lược đồ thuật toán huấn luyện mạng
Hình 2.15: Lược đồ thuật toán BackPropagation
Hình 2.16: Lược đồ thuật toán nhận dạng kí tự
Hình 3.1: Một mẫu dữ liệu huấn luyện mạng
Hình 3.4: Hoàn thành việc học mạng
Hình 3.3: Ấn nút học mạng, bắt đầu quá trình học
Hình 3.2: Trạng thái khởi đầu, khởi tạo quá trình học
Hình 3.5: Tiến hành nhận dạng, chọn ảnh thử nghiệm
Hình 3.6: Chương trình load ảnh thử nghiệm vào
Hình 3.7: Kết quả nhận dạng


1

MỞ ĐẦU
Cùng với sự phát triển nhanh chóng về phần cứng máy tính, các phần
mềm càng trở nên đa dạng, phong phú, hoàn thiện hơn và hỗ trợ hiệu quả hơn
cho con người. Các phần mềm hiện nay ngày càng mô phỏng khá nhiều
nghiệp vụ phức tạp, hỗ trợ cho người dùng sử dụng thuận tiện, thời gian xử lý

nhanh chóng và một số nghiệp vụ tự động hoá cao trong số đó Mạng nơ ron
nhân tạo là một mô phỏng xử lý thông tin, được nghiên cứu ra từ hệ thống
thần kinh của sinh vật, giống như bộ não để xử lý thông tin. Nó bao gồm số
lượng lớn các mối gắn kết cấp cao để xử lý các yếu tố làm việc trong mối liên
hệ giải quyết vấn đề rõ ràng. ANNs giống như con người, được học bởi kinh
nghiệm, lưu những kinh nghiệm hiểu biết và sử dụng trong những tình huống
phù hợp.
Hiện nay, trong hầu hết các cơ sở giáo dục đào tạo cả nước ta đều được
trang bị phần mềm quản lý điểm nhằm nâng cao chất lượng giảng dạy và quản
lý học sinh, sinh viên, giúp giảm bớt một phần lớn công việc của đội ngũ cán
bộ quản lý giáo dục. Tuy nhiên việc cập nhật điểm thi vào hệ thống phần
mềm quản lý giáo dục vẫn còn thủ công, không những làm tốn nhiều công sức
của đội ngũ giáo vụ mà còn có nhiều sai sót đặc biệt với những trường có số
lượng môn học và số sinh viên lớn.
Từ những lý do trên, tôi đã chọn đề tài “KỸ THUẬT NHẬN DẠNG
CHỮ SỐ DỰA VÀO MẠNG NƠRON TRONG NHẬP ĐIỂM TỰ
ĐỘNG” với mong muốn phần nào giải quyết được phần nào những khó khăn
đó. Thay vì phải nhập điểm thủ công, giờ đây việc nhập điểm trở nên dễ dàng,
thuận tiện hơn với chương trình tự động cập nhật điểm.
Việc cập nhật điểm tự động rõ ràng đã giải quyết được những khó khăn
và bất tiện của chương trình quản lý điểm thông thường để lại.
* Đối tượng và phạm vi nghiên cứu


2

- Nghiên cứu quá trình phiếu điểm viết tay của giảng viên qua máy quét thu
được hình ảnh và đưa vào máy tính.
- Nhập điểm tự động tại trường Cao Đẳng Cộng Đồng Bắc Kạn.
* Hướng nghiên cứu của đề tài

- Phiếu điểm viết tay của giảng viên qua máy quét thu được hình ảnh và đưa
vào máy tính.
- Phân vùng ảnh thành 2 vùng ảnh cần thiết: Mã sinh viên (hoặc số báo danh)
và Điểm thi.
- Nhận dạng thông qua mạng nơron với các mẫu thu thập được.
- Cập nhật vào Cơ sở dữ liệu.
* Phương pháp nghiên cứu
- Nghiên cứu các tài liệu và viết tổng quan.
- Phương pháp nghiên cứu bài toán nhận dạng chữ số dựa vào mạng nơron
trong nhập điểm tự động.
- Phương pháp phân tích, đánh giá đối tượng (phiếu điểm).
- Nghiên cứu triển khai thử nghiệm chương trình.
* Ý nghĩa khoa học của đề tài
- Bản thân hiểu sâu hơn và áp dụng được các phương pháp cụ thể là nhận
dạng chữ số dựa vào mạng nơron trong nhập điểm tự động.
- Nâng cao chất lượng công việc trong việc nhập điểm tự động trong cán bộ
quản lý giáo dục. Giảm thiểu sai sót trong quá trình nhập điểm.
* Cấu trúc của luận văn bao gồm 3 chương sau:
- Chương 1: Khái quát về xử lý ảnh và nhận dạng phiếu điểm
- Chương 2: Mạng nơron và nhận dạng phiếu điểm
- Chương 3: Chương trình thử nghiệm kỹ thuật nhận dạng chữ số dựa vào
mạng nơron trong nhập điểm tự động
- Kết luận:


3

CHƯƠNG 1. KHÁI QUÁT VỀ XỬ LÝ ẢNH VÀ NHẬN DẠNG
PHIẾU ĐIỂM
1.1. Khái quát về xử lý ảnh [1]

Xử lý ảnh là một trong những mảng quan trọng nhất trong kỹ thuật thị giác
máy tính, là tiền đề cho nhiều nghiên cứu thuộc lĩnh vực này. Hai nhiệm vụ
cơ bản của quá trình xử lý ảnh là nâng cao chất lượng thông tin hình ảnh và
xử lý số liệu cung cấp cho các quá trình khác trong đó có việc ứng dụng thị
giác vào điều khiển.
Đã có rất nhiều công trình nghiên cứu tại nhiều quốc gia từ năm 1920
đến nay về xử lý ảnh đã góp phần thúc đẩy tiến bộ trong lĩnh vực này lớn
mạnh không ngừng.
Quá trình bắt đầu từ việc thu nhận ảnh nguồn (từ các thiết bị thu nhận
ảnh dạng số hoặc tương tự) gửi đến máy tính. Dữ liệu ảnh được lưu trữ ở định
dạng phù hợp với quá trình xử lý. Người lập trình sẽ tác động các thuật toán
tương ứng lên dữ liệu ảnh nhằm thay đổi cấu trúc ảnh phù hợp với các mục đích
khác nhau.
1.1.1. Các giai đoạn của một quá trình xử lý ảnh.
Để có thể hình dung cấu hình một hệ thống xử lý ảnh chuyên dụng hay
một hệ thống xử lý ảnh trong nghiên cứu, đào tạo, trước hết chúng ta hãy xem
xét các bước cần thiết trong xử lý ảnh.

a. Thu nhận ảnh
Ảnh có thể thu nhận qua camera, thông thường ảnh thu nhận qua
camera là tín hiệu tương tự, nhưng cũng có thể là tín hiệu số hoá. Ảnh cũng
có thể thu nhận từ vệ tinh qua các bộ cảm ứng hay ảnh, tranh được quét trên
scanner. Sau đó được lưu trữ trong máy tính. Gồm có 2 quá trình:


4

- Biến đổi năng lượng quang học sang năng lượng điện.
- Biến đổi năng lượng điện sang các ma trận.
b. Xử lí trước

Quá trình xử lí trước thực ra bao gồm nhiều công đoạn nhỏ. Trước hết
là công việc tăng cường ảnh để nâng cao chất lượng ảnh. Do những nguyên
nhân khác nhau: có thể do chất lượng thiết bị thu nhận ảnh, do nguồn sáng
hay do nhiễu ảnh có thể bị suy biến. Do vậy cần phải tăng cường và khôi phục
lại ảnh để làm nổi bật một số đặc tính chính của ảnh, hay làm cho ảnh gần
giống nhất với trạng thái gốc (trạng thái trước khi ảnh bị biến dạng). Nhằm
các mục đích phục vụ cho các bước tiếp theo.
Những mục đích riêng biệt có thể đặt ra cho quá trình xử lý trước là:
+ Thực hiện điều chỉnh độ chiếu sáng để khắc phục hậu quả của sự
chiếu sáng không đồng đều.
+ Giảm nhỏ thành phần nhiễu.
+ Cải thiện độ tương phản của ảnh màu do khuôn màu không tốt.
+ Hiệu chỉnh độ méo giá trị xám.
+ Loại bỏ tính không đồng thể của ảnh gây nên từ tính không đồng bộ
của lớp nhạy quang của hệ thống thu nhận ảnh.
+ Chuẩn hóa độ lớn, dạng và màu.
+ Điều chỉnh bộ lọc để khuếch đại các tần số với những thông tin quan
trọng được khuếch đại và nén đi các tần số khác.
c. Phân đoạn
Là quá trình phân chia các đối tượng cần khảo sát ra khỏi phần nội
dung còn lại của ảnh, phân tách các đối tượng tiếp giáp nhau và phân tách
những đối tượng riêng biệt thành những đối tượng con. Một phương pháp
phân đoạn ảnh là sử dụng một ngưỡng giá trị xám để phân tách ảnh thành đối


5

tượng và nền (những điểm dưới ngưỡng xám thuộc về nền, ngược lại thuộc về
đối tượng).
d. Tách ra các đặc tính

Dựa trên các thông tin thu nhận được qua quá trình phân đoạn, kết hợp
với các kỹ thuật xử lý để đưa ra các đặc trưng, đối tượng ảnh cũng như các
thông tin cần thiết trong quá trình xử lý. Nhờ các đặc tính có được từ ảnh ta
có thể phân loại các đối tượng khác nhau của ảnh.
e. Phân loại ảnh
Thực hiện công việc sắp xếp một đối tượng vào một lớp đối tượng cho
trước. Để giải quyết bài toán này thì các đặc tính có ý nghĩa phải được lựa
chọn. Ta tìm thấy các đặc tính có ý nghĩa khi ta phân tích các mẫu được lựa
chọn từ những đối tượng khác nhau.
1.1.2. Mô tả ảnh
a. Phần tử ảnh (Pixel - Picture Element)
Ảnh trong thực tế là một ảnh liên tục về không gian và về giá trị độ sáng.
Để có thể xử lý ảnh bằng máy tính cần thiết phải tiến hành số hoá ảnh. Trong
quá trình số hoá, người ta biến đổi tín hiệu liên tục sang 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 hoá thành phần giá
trị mà thể về nguyên tắc bằng mắt thường không phân biệt được hai điểm kề
nhau. Trong quá trình này, người ta sử dụng khái niệm Picture element mà ta
quen gọi hay viết là Pixel - phần tử ảnh. Mỗi Pixel bao gồm một cặp tọa độ chỉ
vị trí (x,y) và một mức xám nhất định. Mật độ Pixel trên một ảnh số cho ta xác
định được độ phân giải của ảnh. Ảnh có độ phân giải càng cao thì càng rõ nét
và ngược lại. Ví dụ một ảnh số có độ phân giải là 800 x 600 Pixel nghĩa là có
800 điểm theo chiều ngang và 600 điểm theo chiều dọc.
b. Mức xám (Gray Level)


6

Mức xám của điểm ảnh là kết quả sự biến đổi tương ứng một cường độ
sáng của điểm ảnh đó với một giá trị số (kết quả của quá trình lượng hoá).
Cách mã hoá kinh điển thường dùng 16, 32 hay 64 mức. Mã hoá 256 mức là

phổ dụng nhất do lý do kỹ thuật. Vì 28 = 256 (0, 1, ..., 255), nên với 256 mức
mỗi pixel sẽ được mã hoá bởi 8 bit.
c. Ảnh
Là tập hợp hữu hạn các điểm ảnh, thường được biểu diễn bằng một
mảng hai chiều I(n,m) với n là số hàng, m là số cột. Ta ký hiệu P(x,y) là một
điểm ảnh tại vị trí (x, y). Số lượng điểm ảnh trên mỗi hàng hoặc các hàng xác
định độ phân giải của ảnh.
d. Phân loại ảnh
o Ảnh nhị phân
Giá trị xám của tất các các điểm ảnh chỉ nhận giá trị 1 hoặc 0. Như vậy
mỗi điểm ảnh trong ảnh nhị phân được biểu diễn bới 1 bit.
o Ảnh xám
Giá trị xám nằm trong khoảng 0..255. Như vậy mỗi điểm ảnh trong ảnh
nhị phân được biểu diễn bới 1 byte.
o Ảnh mầu
Ta quan tâm và xử lý ảnh với mô hình ba màu, ảnh theo mô hình thụ
cảm sẽ chuyển sang mô hình ba màu trước khi xử lý.
- Hệ mầu RGB (RED- GREEN- BLUE): Thông tin con người thu nhận bằng
hình ảnh đều bắt nguồn từ thị giác. Mắt con người có khả năng phân biệt được
rõ nét 3 mầu: đỏ, lục, lam. Các ảnh mầu nói chung đều bao gồm 3 ảnh xám
đối với màu nền đỏ, lục và lam. Tất các màu sắc trong tự nhiên đều có thể
tổng hợp từ 3 thành phần mầu nói trên. Mô hình RGB còn gọi là mô hình
cộng tính, mỗi mức xám của ảnh sẽ được biểu diễn bởi 3 thành phần: R, G, B
(Mỗi thành phần được biểu diễn bởi 1 byte).


7

- Hệ mầu CMY(CYAN- MAGENTA- YELLOW): là phần bù của hệ mầu
RGB theo nguyên tắc: C + R = M + G = B + Y =(1, 1, 1). Hệ mầu này thường

dùng để xuất thông tin mầu ra các thiết bị như máy in màu.
- Hệ mầu CMYK(CYAN- MAGENTA- YELLOW- BLACK): Xuất phát từ
hệ mầu CMY với K là độ đậm nhạt của mầu. K. Với C, M, K được xác định
từ CMY(C1, M1, Y1) như sau: K = min(C1, M1, Y1, K); C = C1-K; M=M1K; Y= Y1-K.
1.1.3. Một vấn đề trong xử lý ảnh
Ta nhận thấy một ảnh màu RGB bao gồm 3 ảnh xám: R, G và B. Như
vậy để xử lý ảnh mầu ta phải xử lý trên 3 ảnh xám R, G, B của nó và kết hợp
lại sẽ có kết quả như mong muốn.
a. Kỹ thuật tăng, giảm độ sáng
Tăng cường độ sáng của một ảnh có thể được hiểu như sự phát sáng
toàn bộ ảnh. Hay nói một cách cụ thể đó là sự phát sáng toàn bộ của mọi Pixel
trong ảnh đó. Đây là một kỹ thuật khá đơn giản: để tăng thêm độ sáng, tất cả
các Pixel của ảnh cần được cộng thêm giá trị điều chỉnh vào mọi kênh màu
RGB. Tuy kỹ thuật này đơn giản nhưng nó đem lại hiệu quả khá cao và rất
hay được sử dụng trong lĩnh vực xử lý ảnh. Nó giúp ích rất nhiều trong các
ngành như y học, địa lý, quân sự,... trong việc phân tích và nhận dạng.
Điều chỉnh độ sáng không chỉ được sử dụng để làm sáng lên những ảnh
tối mà còn được sử dụng để làm tối đi các ảnh sáng. Một ảnh sáng hoàn toàn
đơn giản là tất cả các Pixel đều màu trắng trong khi một ảnh tối hoàn toàn là
tất cả các Pixel đều màu tối. Sự khác nhau duy nhất trong làm tối một ảnh là
trừ đi giá trị điều chỉnh vào mỗi kênh màu RGB của ảnh.
Đối với mỗi kênh màu, chúng chỉ nhận các giá trị [0..255]. Chính vì thế
khi tăng cường hay giảm độ sáng của một ảnh ta phải chú ý đến ngưỡng của
các kênh. Điều đó có nghĩa là với mỗi kênh màu của một Pixel nếu nhỏ hơn 0


8

thì ta phải gán bằng 0 và nếu lớn hơn 255 thì ta phải gán bằng 255. Biểu thức
cho kỹ thuật Brightness có dạng:

g(x,y) = f(x,y) + b
Trong đó b là hằng số cộng thêm vào giá trị màu f(x,y). Độ sáng của
ảnh tăng nếu b > 0, và giảm bớt nếu b < 0.

Hình 1.1: Ảnh gốc

Hình 1.2: Ảnh đã giảm Hình 1.3. Ảnh đã được
độ sáng

tăng cường độ sáng

b. Kỹ thuật tăng, giảm độ tương phản
Độ tương phản (Contrast) thể hiện sự thay đổi cường độ sáng của đối
tượng so với nền, hay nói cách khác, độ tương phản là độ nổi của điểm ảnh
hay vùng ảnh so với nền.
Ảnh số là tập hợp các điểm, mà mỗi điểm có giá trị độ sáng khác nhau.
Ở đây, độ sáng để mắt người dễ cảm nhận ảnh song không phải là quyết định.
Thực tế chỉ ra rằng hai đối tượng có cùng độ sáng nhưng đặt trên hai nền khác
nhau nhau sẽ cho cảm nhận khác nhau. Vì vậy ta có thể thay đổi độ tương
phản của ảnh sao cho phù hợp.
Việc làm tăng độ tương phản rất hữu ích khi tiến hành xử lý trước theo
phương pháp phân ngưỡng. Bằng việc làm tăng độ tương phản, sự khác nhau
của giá trị nền và đối tượng, độ dốc của cạnh đối tượng được tăng lên. Do đó


9

sau khi làm tăng độ tương phản ta có thể tìm các giá trị màu thích hợp với
một vùng sáng hơn. Trong một ảnh có độ tương phản cao, có thể xác định
được các viền rõ ràng và chi tiết khác nhau của ảnh đó được nổi bật. Còn

trong một ảnh có độ tương phản thấp, tất cả các màu đều gần như nhau gây
khó khăn cho việc xác định các chi tiết của ảnh.

Hình 1.4: Ảnh gốc

Hình 1.5: Ảnh đã giảm độ Hình 1.6: Ảnh đã được
tương phản

tăng độ tương phản

Biểu thức cho kỹ thuật Contrast có dạng:
g(x,y) = af(x,y)
Trong đó a là hằng số nhân vào giá trị màu tại f(x,y). Độ sáng của ảnh
tăng nếu a > 1, và giảm bớt nếu a < 1.
c. Tách ngưỡng
Ta chọn hai mức Thấp- Min, Cao-Max và giá trị ngưỡng λ, khi đó giá
trị các pixel được định nghĩa lại như sau:
+ Inew(x, y) = Max nếu I(x, y) >= λ
+ Inew(x, y) = Min nếu I(x, y) < λ
d. Chuyển đổi sang ảnh nhị phân
Nhiệm vụ của việc chuyển đổi sang ảnh nhị phân là tách màu của “đối
tượng” ra khỏi nền. Biểu đồ hình cột của giá trị mức xám của tài liệu ảnh
thông thường chứa 2 giá trị: giá trị mức cao tương ứng với màu nền trắng và
giá trị nhỏ hơn tương tứng với màu chữ. Vì thế, nhiệm vụ của việc xác định
ngưỡng giá trị mức xám (giá trị mức xám lớn hơn giá trị ngưỡng sẽ là màu


10

trắng, giá trị mức xám nhỏ hơn giá trị ngưỡng sẽ là màu đen) là xác định một

giá trị thích hợp để việc chuyển đổi từ ảnh xám sang ảnh nhị phân sao cho
lượng thông tin mất mát là ít nhất.
Trong đề tài này tôi tính ngưỡng để chuyển đổi từ ảnh xám sang ảnh
nhị phân theo phương pháp của Otsu. Và việc chuyển đổi từ ảnh xám sang
ảnh nhị phân được thực hiện theo phương pháp ngưỡng tổng thể.
o Phương pháp ngưỡng toàn cục
Trong phương pháp sử dụng ngưỡng toàn cục, giá trị ngưỡng được tính
toán từ toàn bộ ảnh. Các điểm ảnh có giá trị mức xám dưới ngưỡng sẽ được
coi như là “nét bút”; các điểm ảnh có mức xám lớn hơn ngưỡng được coi là
“nền”. Quá trình này có thể được mô tả như sau:
1
b ( x, y )  
0

if

f ( x, y )  T
otherwise

Trong phương pháp ngưỡng toàn cục, tôi sử dụng phương pháp Otsu để
tính ngưỡng của mỗi bức ảnh. Phương pháp của Otsu dựa trên việc phân tích
biểu đồ hình cột mức xám của toàn bộ ảnh và sau đó chọn một giá trị làm giá
trị ngưỡng phù hợp với việc chuyển đổi ảnh sang ảnh nhị phân.
o Phương pháp Otsu
Trong lĩnh vực xử lý ảnh, phương pháp Otsu được dùng để tự động
thực hiện việc tính ngưỡng của một ảnh, và sau đó dùng giá trị ngưỡng vừa
tính được để chuyển đổi ảnh xám sang ảnh nhị phân.
Thuật toán tính ngưỡng có thể mô tả như sau: Các giá trị mức xám của
ảnh được chia ra làm 2 lớp sau đó tính giá trị ngưỡng. Chúng ta sẽ tìm giá trị
ngưỡng nhỏ nhất trong các lớp khác nhau, được định nghĩa như là một tổng

các giá trị khác nhau của các lớp;

 w2 (t)  1 (t)12 (t) 2 (t) 22 (t)


11

Trọng số wi là xác suất của 2 lớp được tác riêng biệt bởi ngương t và
các i2 khác nhau của các lớp đó.
Phương pháp Otsu chỉ ra rằng giá trị nhỏ nhất trong một lớp đồng thời
cũng được coi như là giá trị lớp nhất giữa 2 lớp.
 b2 (t )   2   w2 (t )  1 (t )2 (t )1 (t )   2 (t )2

Phương pháp tính ngưỡng theo Otsu dựa trên một ý tưởng khá là đơn
giản: Tìm giá trị ngưỡng mà có giá trị trọng số nhỏ nhất trong các lớp khác nhau.
Điều này cũng tương đương với việc tìm giá trị lớn nhất giữa 2 lớp khác nhau.
Trọng số trong một lớp được tính như sau:

 w2 ( t )   1 ( t ) 12 ( t )   1 ( t ) 22 ( t )
Trong đó các xác suất của lớp được tính như sau:
t

L

 1 (t )   P (i )

 2 (t ) 

i 1


 P (i )

i  t 1

Và các giá trị trung bình được cho bởi công thức:
t

 1 (t )  
i 1

iP (i )
1 (t )

L

 2 (t ) 

iP ( i )
i  t 1 2 ( t )



Cuối cùng, các lớp khác nhau được tính theo công thức sau:
t



2
1


(t ) 

 i

2

  1 (t )

i 1
L



2
2

(t ) 

 i 

2

 2 (t ) 

i  t 1

P (i)
 1 (t )
P (i)
 2 (t )


* Thuật toán:
- Tính biểu đồ hình cột và xác suất của mỗi cường độ xám.
- Khởi tạo i (0) và i (0)


12

- Tính toán tất cả các trường hợp có thể có giá trị ngưỡng từ t=1 tới
cường độ mức xám lớn nhất.
- Cập nhật i và i
- Tính  b2 (t)
- Giá trị ngưỡng mong muốn tương đương với giá trị  b2 (t) lớn nhất.
e. Loại bỏ nhiễu
Đối với một tệp tin ảnh thì nhiểu được định nghĩa là nhưng thông tin
không có trong ảnh gốc, nhưng trong quá trình sử dụng các thiết bị để đọc ảnh
vào trong máy tính xuất hiện thêm những thông tin không mong muốn. Việc
xử lý nhiễu tức là loại bỏ các thông tin này ra khỏi ảnh để thuận tiện cho việc
trích rút thông tin phục vụ cho việc xử lý ảnh dễ dàng hơn và chính xác hơn.
o Một số kiểu nhiễu:
Có một số kiểu nhiễu mà chúng ta hay gặp:
Loại nhiễu “salt” và “peper”, các điểm ảnh trong ảnh là những màu hay
cường độ sáng khác nhau so với các điểm xung quanh nó. Đối với những
điểm ảnh là loại nhiễu này thì thông thường giá trị mức xám của chúng không
liên quan tới các điểm ảnh xung quanh nó.
Trong đề tài này, dữ liệu ảnh chủ yếu được lấy bằng cách scan ảnh, do
đó loại nhiễu phổ biến và thường gặp đó là ‘salt’ và ‘peper’.
o Các phương pháp lọc nhiễu.
Sử dụng bộ lọc tuyến tính: Một trong những phương pháp để loại bỏ
nhiễu là kết hợp ảnh gốc (ảnh cần lọc nhiễu) với một mặt nạ lọc thông thấp

hoặc là làm mượt ảnh. Ví dụ, mặt nạ Gaussian bao gồm các phần tử được xác
định bởi hàm Gaussion. Sự kết hợp này mang đến giá trị của mỗi điểm ảnh
cân đối với các điểm lân cận nó. Một cách tổng quát, một bộ lọc làm mượt
ảnh thiết lập giá trị của mỗi điểm ảnh là giá trị trung bình của chính nó và các


13

điểm ảnh lân cận. Các bộ lọc làm mượt ảnh được sử dụng để loại bỏ vết nhơ
trong ảnh.
Sử dụng bộ lọc không tuyến tính: Bộ lọc trung bình là một ví dụ về bộ
lọc không tuyến tính, bộ lọc này rất tốt đối với việc loại bỏ các loại nhiễu là
“salt” và “peper”.
* Thuật toán:
- Xét mỗi điểm ảnh cần lọc.
- Sắp xếp giá trị mức xám của các điểm ảnh lân cận theo hướng tăng
dần
- Thay thế giá trị mức xám gốc bằng giá trị mức xám ở chính giữa của
dãy vừa sắp xếp.

Hình 1.7: Mô phỏng thuật toán lọc trung vị để loại bỏ nhiễu.
f. Các phép biến đổi hình học
o Phép dịch ảnh
Là sự tịnh tiến gốc tọa độ, trong đó các trục của tọa độ sau phép biến
đổi sẽ di chuyển theo cùng hướng, việc phân chia thang trên tọa độ là không
đổi. Gốc tọa độ cũ (-tx, -ty) thì tọa độ (x’, y’) được tính như sau:
x’ = x - tx y’= y – ty


14


o Phóng to hoặc thu nhỏ ảnh
Còn được gọi là sự chia lại thang tọa độ. Khi chia thang tọa độ gốc và
hướng được giữ nguyên, chia thang tiến hành với hệ số chia thang Sx, Sy và
các tọa độ mới được tính toán theo
x’ = x*Sx y’ = y*Sy
o Phép quay ảnh
Thực ra đây là phương pháp chuyển đổi các Pixel trong ảnh. Do không
làm thay đổi trị màu trong ảnh nên có thể thực hiện phương pháp này trên ảnh
màu cũng như trên ảnh xám. Một ảnh được xem như là một mảng hai chiều,
chuyển đổi lại vị trí các Pixel là sắp xếp lại mảng này. Khi quay thì sự chia
thang giữ nguyên chỉ có hướng trục thay đổi. Còn trục mới xuất hiện bằng
cách quay trục cũ đi một góc θ ngược chiều kim đồng hồ, khi đó tọa độ mới
được theo theo công thức:
x’ = cosθ + y.sinθ
y’ = -x.sinθ + y.cosθ
 cos 
Với T là ma trận quay: T    sin 
 0

sin 
cos 
0

0
0 
1 

Như vậy, ảnh có kích thước I[W*H]. Khi quay một góc θ thì kích thước
mới sẽ được tính như sau:

W_moi= H_cu * |Sin(θ)| + W_cu *| Cos(θ)|;
H_moi = W_cu * |Sin(θ)| + H_cu * |Cos(θ)|;
Khi đó ảnh quay sẽ có kích thước I(W_moi , H_moi). Tọa độ 4 góc của
ảnh cũ lần lượt là:
(x1,y1) = (0,0) ; (x2,y2) = (w,0) ; (x3,y3) = (w,h) ; (x4,y4) = (0,h) ;


15

Hình 1.8: Mô tả phép quay ảnh
1.2. Nhận dạng phiếu điểm
a. Phân tách vùng chứa dữ liệu.
Trong quá trình nhập điểm, thông tin quan trọng cần được lấy đó là vùng
ảnh chứa mã số sinh viên và vùng ảnh chứa điểm Z. Khi lấy được vùng ảnh
chứa mã số sinh viên và vùng ảnh chứa điểm Z, ta thực hiện việc tách ra
thành các dòng khác nhau. Mỗi một dòng sẽ là mã sinh viên của từng sinh
viên và căn cứ vào mã sinh viên này ta có thể cập nhật điểm mà được lấy ra từ
vùng ảnh chứa điểm Z vào trong cơ sở dữ liệu.
Việc tách một vùng ảnh ra thành các vùng nhỏ tương ứng với các hàng
khác nhau được thực hiện khá đơn giản bằng giải thuật “Horizontal
Projection”. Tương tự, việc tách các kí tự trên cùng một hàng sẽ được thực
hiện bằng giải thuật “Vertical Projection”
Dưới đây là bức ảnh của bảng điểm mà chúng ta thu được bằng cách sử
dụng máy scan và lưu lại dưới dạng file ảnh.


16

Hình 1.9: Mẫu bảng điểm thu nhận từ máy quét
Nhìn vào chúng ta có thể thấy công việc của chúng ta cần làm là tách

bức ảnh trên ra thành 2 vùng nhỏ:
+ Vùng 1: Chứa mã số sinh viên.
+ Vùng 2: Chứa điểm của sinh viên.


17

b. Tách dòng và tách kí tự.
o Giải thuật Horizontal Projection


18

Giải thuật này được sử dụng để chia nhỏ vùng ảnh chứa mã số sinh viên ra
thành các vùng ảnh nhỏ hơn, mỗi vùng ảnh chứa một mã số của 1 sinh viên.
Giải thuật Horizontal Projection có thể được mô tả như sau

0
PH h    B  p x , h   
x0
1
w 1

if p ( x , h ) is white
if p ( x , h ) is black

Trong đó: - PH(h) là tổng số điểm ảnh màu đen trên dòng h
- W là chiều rộng của ảnh.
- p(x,h) nghĩa là điểm ảnh nằm trên tọa độ (x,h).
Khi chúng ta tính Horizontal Projection trên hàng h, nếu như hàng này

có PH(h) != 0 thì chúng ta có thể cắt từ hàng 0 tới h-1 thành một vùng ảnh nhỏ
và được coi là một hàng tương ứng với một mã số sinh viên.
o Giải thuật Vertical Projection
Giải thuật này được sử dụng để chia vùng ảnh con tương ứng với một
hàng thu được từ bước trên để lấy được các kí tự riêng biệt.
Giải thuật Vertical Projection có thể được mô tả như sau:
H 1
0
PV c    B  p x, c   
x 0
1

if p ( x, c) is white
if p ( x, c) is black

Trong đó: - PV(c) là tổng số điểm ảnh màu đen trên dòng h
- H là chiều cao của ảnh
- p(x,c) nghĩa là điểm ảnh nằm trên tọa độ (x,c).
Khi chúng ta tính Vertical Projection trên cột c, nếu như hàng này có
PH(c) != 0 thì chúng ta có thể cắt từ cột 0 tới c-1 thành một vùng ảnh nhỏ và
được coi là một hàng tương ứng với một chữ số trong mã sinh viên.
c. Trích rút đặc trưng
Sau khi tách dòng và tách riêng từng kí tự thành công. Ta thực hiện tiếp
công đoạn tiếp theo đó là trích rút đặc trưng của từng bức ảnh chứa các kí tự


×