Một cách khác là trích xuất đặc trưng, mà ở đó vector đặc chưng sẽ được biến đổi sang một dạng khác có s ố chiều nh ỏ hơn.. Các hình chiếu thu được là tổng của cường độ các điểm ảnh theo
Trang 1B GIÁO D Ộ Ụ C VÀ ĐÀO T Ạ O
TÊN ĐỀ TÀI:
Chuyên ngành: K ỹ thuật Đ ệ ửi n t
LUẬN VĂN THẠC SĨ KỸ THU T Ậ
H c viên: ọ Nguy n Duy Minh ễ
Người hướng d n: TS Nguy n H u Phát ẫ ễ ữ
HÀ NỘI 2018-
Tai ngay!!! Ban co the xoa dong chu nay!!! 17057204901961000000
Trang 2M Ở ĐẦU 8
CHƯƠNG 1: GIỚI THI U 10Ệ
1.1 M c tiêu 10ụ1.2 Thách th c 10ứ1.3 Thực trạng tri n khai 10ể1.4 C u trúc cấ ủa luận văn 11
CHƯƠNG 2: TỔNG QUAN V NH N D NG NÓI CHUNG 12Ề Ậ Ạ
2.1 Gi i thi u v nh n d ng nói chung 12ớ ệ ề ậ ạ2.1.1 Nh n d ng m u 12ậ ạ ẫ2.1.2 Quy trình nh n d ng m u 14ậ ạ ẫ2.1.3 So sánh giữa các phương thức phân lo i 20ạ2.2 Gi i thi u v nh n d ng ch vi t tay 21ớ ệ ề ậ ạ ữ ế2.2.1 Nh n d ng ch 24ậ ạ ữin2.2.2 Nh n d ng ch ậ ạ ữviết tay 252.3 Các ng d ng d a trên nh n d ng ch vi t tay 27ứ ụ ự ậ ạ ữ ế2.4 Kết luận chương 30
CHƯƠNG 3: THUẬT TOÁN NH N D NG CH VI T TAY 31Ậ Ạ Ữ Ế
3.1 Ti n x lý nh 31ề ử ả3.1.1 Chuy n nh màu sang nh xám 32ể ả ả
Trang 32
3.1.2 Làm m ờ ảnh 333.1.3 Lọc ảnh sau khi làm m 35ờ3.1.4 Nh phân hóa 37ị3.1.5 Lọc ảnh sau khi nh phân 38ị3.2 Phân tách t ng thành các ch cái riêng r 39ừ ữ ữ ẽ
3.3 Thuật toán nh n d ng các ch cái riêng r 42ậ ạ ữ ẽ3.3.1 Chu n hóa nh 42ẩ ả3.3.2 Trung tâm hóa đối tượng trong nh 42ả3.3.3 Nh n d ng các ch 44ậ ạ ữcái3.4 Kết luận chương 58
CHƯƠNG 4: MÔ PHỎNG ĐÁNH GIÁ KẾT QU 59Ả
4.1 Thiết lập 594.1.1 Xây dựng chương trình 594.1.2 L y m u ch vi t tay 65ấ ẫ ữ ế4.2 Kết quả mô ph ng 68ỏ4.3 Nhận xét và đánh giá kết quả mô phỏng 724.4 Kết luận chương 73
KẾ T LUẬN VÀ HƯỚNG PHÁT TRI N CỂ Ủ A Đ ỀTÀI 74
TÀI LIỆU THAM KH O 75Ả
PHỤ Ụ L C 77
Trang 43
Tôi xin cam đoan các kết quả nghiên c u trong luứ ận văn là của riêng tôi và chưa được công b trong b t kì công trình nghiên c u nào ố ấ ứ
Hà nội, ngày 03 tháng 03 m 2018 nă
Học viên
Nguy n Duy Minh ễ
Trang 54
Danh m c các ký hi các ch vi t t t ụ ệ u, ữ ế ắ
1 SVM Support Vector Machine Máy vector hỗ trợ
2 ART Adaptive Resonance
Theory
Lý thuyết cộng hưởng thích nghi
3 FIV Fuzzy Invariant Vector Vector bất biến mờ
Trang 65
Danh m c các b ụ ả ng
B ng 2-ả 1: So sánh các phương pháp phân loại 21
B ng 4-1: Kả ịch bản chạy chương trình đánh giá tham số ố lượng nơ s -ron lớ ấp n 69
B ng 4-2: Kả ết quả đánh giá số nơ ron lớ ẩ - p n sau 10 l n ch y 69ầ ạ
B ng 4-3: Kả ịch bản chạy chương trình đánh giá tham số ệ ố ọ h s h c 70
B ng 4-4: Kả ết quả đánh giá hệ ố ọ s h c qua 10 l n ch y 70ầ ạ
B ng 4-5: Kả ịch bản chạy chương trình đánh giá kích thước mộ ợ ầt đ t đ u vào 71
B ng 4-6: Kả ết quả đánh giá kích thước một đợ ầt đ u vào sau 10 l n ầ chạy 71
Trang 76
Danh m c các hình v ụ ẽ ồ , đ thị
Hình 2-1: Quy trình nh n d ng m u nh 12ậ ạ ẫ ảHình 2-2: a) nh g c b) Phân tách dẢ ố ựa trên năng lượng Fermi c) Phân tách s ử
dụng phương thức Otsu d) Phân tách s d ng thu t toán k-means [6] 15ử ụ ậHình 2-3: Các đặc trưng của kịch b n ngôn ng [11] 23ả ữHình 2-4: Các phân vùng của nhận d ng ch [15] 24ạ ữHình 2-5: Quy trình s hóa tài li u [16] 28ố ệHình 2-6: ng d ng Handwritting Input c a Google [ nh: Google 28Ứ ụ ủ ả ]
Hình 2-7: ng d ng Smart Select c a Samsung (gỨ ụ ủ ọi điện nhanh t i s ớ ố được viết tay) 29Hình 3-1: Ví d v ụ ề ảnh thô đầu vào 32Hình 3-2: Sơ đồ các bước tiền x ửlý ảnh 32Hình 3-3: S ốchiề ủa ảu c nh s gi m khi chuyẽ ả ển đổi sang nh xám 33ảHình 3-4: So sánh nh gả ốc và ảnh xám (a) nh gả ốc b) ảnh xám) 33Hình 3-5: Đồ hàm Gaussian 34thịHình 3-6: So sánh làm m Gaussian và làm m ờ ờtrung bình 35Hình 3-7:Mô t ảbiến đổi hình thái học: a) ảnh gốc b) ảnh qua phép xói mòn c) nh ảqua phép trương nở [14] 36Hình 3-8: Tác d ng c a hàm opening [14] 36ụ ủHình 3-9: S dử ụng hàm opening trong đề tài (a) nh sau làm m Gausian b) nh ả ờ ảsau opening) 37Hình 3-10: Hoạ ột đ ng của thuật toán Otsu [14] 38Hình 3-11: Áp d ng thuụ ật toán Otsu vào đề tài 38Hình 3-12: Tác d ng c a hàm closing [14] 39ụ ủHình 3-13: Áp dụng hàm closing vào đề tài 39Hình 3-14: Mô t ả đường khung vi n bao quanh các ch cái trong ề ữ ảnh 41Hình 3-15: Các ch ữ cái được tách ra thành các ảnh riêng bi t 41ệHình 3-16: Co nh v ả ề kích thước 20x20 42Hình 3-17: Minh h a tr ng tâm cọ ọ ủa vật thể 43
Trang 87
Hình 3-18: Phương thức trung tâm hóa đ i tưố ợng trong nh 44ảHình 3-19: Ví d ụchuỗi ký tự ế vi t tay 44Hình 3-20: M u d y 45ẫ ạHình 3-21: Cách thức perceptron hoạ ột đ ng [13] 46Hình 3-22: M ng perceptron nhi u l p [13] 47ạ ề ớHình 3-23: Phương thức học m ng [13] 48ạHình 3-24: Đồ hàm sigmoid 49thịHình 3-25: Đồ thị hàm bước nhảy đơn vị 50Hình 3-26: Ki n trúc mế ạng nơ-ron [13] 51Hình 3-27: Mạng nơ-ron s d ng trong nh n d ng ch vi t tay 52ử ụ ậ ạ ữ ếHình 3-28: Đồ hàm C(v) có 2 bi n 53thị ếHình 3-29: Phương thức hoạ ột đ ng của thuật toán gradient descent 56Hình 4-1: Quy trình x ửlý và chuẩn hóa nh 59ảHình 4-2: M u gi y xin ch 66ẫ ấ ữHình 4-3: Hình nh m u thu thả ẫ ập được 67Hình 4-4: Lưu trữ ẫu ả m nh 67Hình 4-5: Cơ sở ữ d u 68liệHình 4-6: Các k t qu ế ả trung bình khi đánh giá số lượng nơ-ron lớ ẩp n 69Hình 4-7: Các k t qu ế ả khi đánh giá hệ ố ọ s h c 70Hình 4-8: Các k t qu ế ả khi đánh giá kích thước mộ ợt đầt đ u vào 72
Trang 98
M Ở ĐẦ U
Trong th i gian gờ ần đây, công nghệ phát tri n m nh m c biể ạ ẽ đặ ệt trong lĩnh
v c trí thông minh nhân t o Th giác máy tính là mự ạ ị ột lĩnh vực liên ngành gi i quyả ết
vi c làm th ệ ế nào để máy tính có th ể đạt được s hi u bi t c p cao t ự ể ế ấ ừ các ảnh và video k thu t s T ỹ ậ ố ừ quan điểm k ỹthuật, nó tìm cách t ng hóa các tác v mà h ự độ ụ ệthống th ị giác con người có th làm Th giác máy tính bao gể ị ồm các phương thức thu nh n, x lý, phân tích và hi u các nh k ậ ử ể ả ỹ thuậ ốt s , và trích xu t các d ấ ữ liệu đa chiề ừ ế ớu t th gi i thực để cho ra các thông tin s ho c biố ặ ểu tượng Vi c phát tri n ệ ểlĩnh vực này trong b i c nh t vi c sao chép kh ố ả ừ ệ ả năng thị giác của con người cho s ự
nh n di n và hi u bi t m t hình nh k thu t s c a máy tính ậ ệ ể ế ộ ả ỹ ậ ố ủ Các lĩnh vực con của thị giác máy tính bao g m tái c u trúc c nh, phát hi n s ki n, theo d u trong video, ồ ấ ả ệ ự ệ ấ
nh n dậ ạng đối tượng, nh n d ng mậ ạ ẫu, ước lượng c ửchỉ 3 chiều, ước lượng chuyển
động, ph c h i ụ ồ ảnh,…
Xét v khía c nh khác, nh n d ng mề ạ ậ ạ ẫu cũng là một ngành thuộc lĩnh vực học máy Nó nh m phân loằ ại dữ liệ u (là các m u) d a trên ho c là ki n th c tiên nghiẫ ự ặ ế ứ ệm
ho c là thông tin thặ ống kê được trích rút t ác m u có sừ ẫ ẵn Trong đó, nhận di n ch ệ ữ
vi t tay cung c p cho máy tính kh ế ấ ả năng phân tích và xác định các ký tự Đây là hướng phát tri n rể ất có ý nghĩa và tiềm năng khi mà có thể ứ ng d ng trong m t s ụ ộ ốlĩnh vực như: số hóa tài liệu, đọc địa ch ỉ bưu cục, giúp ra l nh rô b t h tr con ệ ố ỗ ợngười (đặc bi t vệ ới người khuy t t t) và nói chung là giúp chuyế ậ ển đổi thông tin t ừ
d ng nh s sang dạ ả ố ạng văn bản (text) T ừ suy nghĩ đó, tôi chọn nghiên c u và thứ ực
hiện đề tài: “Nghiên cứu xây d ng và phát tri n các thu t toán nh n d ng ch viự ể ậ ậ ạ ữ ết tay”, và đối tượng được s d ng trong nghiên cử ụ ứu để xác định độ chính xác c a ủthuật toán là ch vi t tay trên gi y tr ng ữ ế ấ ắ
Trong luận văn này, các thuật toán nh n d ng ch vi t tay s ậ ạ ữ ế ẽ trược trình bày,
t vi c phân tách ch , ti n x lý, chuừ ệ ữ ề ử ẩn hóa đến nh n d ng ký t Các k t qu mô ậ ạ ự ế ả
ph ng, ki m th ỏ ể ử cũng được đề ậ c p cùng v i các s so sánh khi thi t l p các thông ớ ự ế ậ
s cho mố ạng nơ-ron s dử ụng để nh n d ng ký t ậ ạ ự
Trang 109
Dướ ự hưới s ng d n c a th y TS Nguy n H u Phát tôi xây d ng và phát ẫ ủ ầ ễ ữ ựtriển các thu t toán nh n d ng ch vi t tay T ng quan v nh n d ng, th c tr ng ậ ậ ạ ữ ế ổ ề ậ ạ ự ạtriển khai hay những cơ sở lý thuy các thu t toán và k t qu ết, ậ ế ả đạt được, cũng như
những đánh giá cải tiế ẽ được trình bày trong luận văn trong nhữn s ng ph n k p ầ ếtiế
Tôi xin chân thành cảm ơn thầy TS Nguy n Hễ ữu Phát đã giúp đỡ và ch dỉ ẫn cho tôi để tôi có th hoàn thành luể ận văn này Tôi cũng ảm ơn gia đình, bạn bè đã cluôn ủng h ộ giúp đỡ, động viên tôi trong quá trình nghiên cứu cũng như thực hi n ệluận văn này
Trang 1110
1.1 M c tiêu ụ
V i nh ng tiớ ữ ềm năng phát triển của học máy, th giác máy tính, c ị ụthể hơn là
nh n d ng m u, m c tiêu cậ ạ ẫ ụ ủa đề tài là khai thác m t nhánh nh trong bài toán nhộ ỏ ận
dạng Đó là nhận d ng ch , ký t viạ ữ ự ết tay Đề tài t p trung vào nghiên c u và phát ậ ứtriển các thu t toán nh n d ng ch vi t tay Thông tin s ậ ậ ạ ữ ế ẽ được chuy n qua d ng s ể ạ ố
b ng vi c s d ng camera ch p l i các ch viằ ệ ử ụ ụ ạ ữ ết tay Sau đó các ảnh thu được s ẽđược x lý và đưa vào nh n dử ậ ạng để được thông tin dướ ạng văn bải d n (text)
1.2 Thách th c ứ
Việc xác định và trích xu t thông tin vi t tay v n là thách th c trong vi c x ấ ế ẫ ứ ệ ử
lý quét Lý do c a nh ng thách th c này có r t nhi u, ủ ữ ứ ấ ề khách quan cũng như chủquan đố ới v i ngư i vi t: ờ ế
Chất lượng gi y kém ấ
Chất lượng máy nh kém ả
Chữ ế ị vi t b nghiêng quá nhi u ề
Độ dày nét bút không đều nhau
c a ABBYY h n 192 ngôn ng , h r t nhiủ ỗtrợ đế ữ ỗtrợ ấ ều định d ng khác nhau ạ ỞViệt Nam cũng có phần m m nh n d ng ch Vi t c a phòng nh n d ng và công ngh tri ề ậ ạ ữ ệ ủ ậ ạ ệ
Trang 1211
thức – Vi n công ngh ệ ệthông tin Hà N i Phộ ần mềm VnDOCR 4.0 nh n d ng ch in ậ ạ ữ
t nhi u loừ ề ại sách báo, định dạng (BMP, GIF, JPG,…) với độ chính xác kho ng ả98%
Tuy nhiên ch vi t tay v n còn là thách th c r t l n khi ph i ph thu c rữ ế ẫ ứ ấ ớ ả ụ ộ ất nhiều vào người viết
1.4 C u trúc c a lu ấ ủ ận văn
V i nh ng yêu c u và mớ ữ ầ ục tiêu đã đề ra ở trên, c u trúc c a luấ ủ ận văn sẽ bao
g m các nồ ội dung sau đây:
Chương 1: Giới thi u ệ
Chương 2: Tổng quan v nh n d ng nói chung ề ậ ạ
Chương 3: Thuật toán nh n d ng ch vi t tay ậ ạ ữ ế
Chương 4: Mô phỏng đánh giá kết qu ả
Trang 13Nhận d ng mạ ẫu đang trở thành ph bi n và quan tr ng vổ ế ọ ới chúng ta, nó đem
l i s h p d n, chú ý t ạ ự ấ ẫ ừ các lĩnh vực rộng hơn Các bước x lý chung c a nhử ủ ận
d ng mạ ẫu được th o luả ận, đầu tiên là t b c ti n x ừ ướ ề ử lý, sau đó là trích xuất đặc trưng, và cuối cùng là phân lo i M t s ạ ộ ố phương pháp đã được s d ng cho m i ử ụ ỗbước ch ng hẳ ạn như phân đoạn, lo i b nhi u trong ti n x lý, biạ ỏ ễ ề ử ến đổi wavelet Gabor cho trích xuất đặc trưng, Support Vector Machines (SVM) cho phân loại,…
Một vài phương pháp nhận d ng m u và ng d ng c a nó s ạ ẫ ứ ụ ủ ẽ được trình bày
Tiền xử lý Trích xuất đặc trưng Phân loại
Hình 2-1: Quy trình nh n d ng m u ậ ạ ẫ ảnh
Nhận d ng m u có th ạ ẫ ể được coi như là một ti n trình phân lo i M c tiêu ế ạ ụcuối cùng c a nó là trích xu t các m u d a trên m t s đi u ki n nhủ ấ ẫ ự ộ ố ề ệ ất định và sau
đó phân biệt m t nhóm t các nhóm khác ng d ng c a nh n d ng m u có th tìm ộ ừ Ứ ụ ủ ậ ạ ẫ ểthấy ở ọi nơi, ví dụ như: phân loạ ệ m i b nh t t, ki m duy t d u vân tay, nh n di n ậ ể ệ ấ ậ ệ
gi ng nói, nh n di n khuôn m t, Thi t k m t h ọ ậ ệ ặ ế ế ộ ệ thống nh n d ng m u nên xem ậ ạ ẫxét mi n ng d ng c a nó ề ứ ụ ủ
Tiền x lý nh là mử ả ột bước quan tr ng trong t t c các h th ng nh n d ng ọ ấ ả ệ ố ậ ạ
mẫu để ả c i thi n hi u su t Nó có vai trò trích xu t l y vùng c n thi t t nh n n, áp ệ ệ ấ ấ ấ ầ ế ừ ả ề
d ng thêm các thu t toán l c nhiụ ậ ọ ễu, làm trơn mịn, chu n hóa nh v d ng ít ph ẩ ả ề ạ ụthuộc vào thay đổ ủa môi trười c ng nhất
Trích xuất đặc trưng là bước quan tr ng trong nh n d ng m u b t bi n Nói ọ ậ ạ ẫ ấ ếchung, một đặc trưng tốt ph i th a mãn các yêu cả ỏ ầu sau đây Một, s sai khác trong ự
Trang 1413
m t nhóm (class) ph i nhộ ả ỏ, điều đó có nghĩa là đặc trưng có đượ ừc t các m u khác ẫnhau trong cùng m t nhóm ph i càng g n gi ng nhau Hai, s sai khác gi a các ộ ả ầ ố ự ữnhóm khác nhau ph i lả ớn, đặc trưng lấ ừy t các m u trong các nhóm khác nhau phẫ ải khác biệt đáng kể Vấn đề chính liên quan đế nh n d ng m u là s ậ ạ ẫ ố chiều c a d ủ ữliệu Có hai lý do gi i thích cho vi c s chi u cả ệ ố ề ủa vector đặc trưng không thể quá
lớn: độ phứ ạc t p tính toán s cao, và hiẽ ệu năng sẽ ảm Đề ả gi gi m chi u c a vector ề ủđặc trưng có hai cách tiếp c n khác nhau M t là lo i b các thành ph n nhầ ộ ạ ỏ ầ ất định
và gi nguyên phữ ần đại diện ý nghĩa nhất, g i là chọ ọn đặc trưng Một cách khác là trích xuất đặc trưng, mà ở đó vector đặc chưng sẽ được biến đổi sang một dạng khác
có s ố chiều nh ỏ hơn Hơn nữa, ở nh ng h ữ ệ thống tốt, đặc trưng không nên phụthuộc vào kích thước, hướng và v trí c a mị ủ ẫu Để làm được điều này chúng ta cần
s d ng các phép d ch, xoay, co dãn gi nguyên t l Vi c ch n cách trích xuử ụ ị ữ ỉ ệ ệ ọ ất đặc trưng sao cho nó có tính phân biệt và độ ậc l p là chìa khóa cho bài toán nh n d ng ậ ạthành công M t s ộ ố đặc trưng có thể đượ ử ục s d ng: màu s c, hình dắ ạng, kích thước,
c u t o, v ấ ạ ị trí, đường nét,…Bên cạnh đó cũng tồ ạ ấn t i r t nhi u thu t toán trích xuề ậ ất đặc trưng như phân tích thành ph n chính không tuy n tính (ti ng Anh: nonliner ầ ế ếprincipal components analysis), phân tích thành ph n chính (ti ng Anh: principle ầ ếcomponents analysis), biến đổi Fourier (ti ng Anh: Fourier transform), biế ến đổi Radon (tiếng Anh: Radon transform),…[4]
Sau bước trích xuất đặc trưng, việc phân loại được th c hiự ện Bước này cho phép chúng ta nh n di n mậ ệ ột đối tượng ho c m t m u b ng s d ng mặ ộ ẫ ằ ử ụ ột vài đặc trưng có đượ ừ các bước trước đó Trong đó chúng ta cố ắc t g ng gán m i giá tr u ỗ ị đầvào của vector đặc trưng vào mộ ớt l p trong m t t p các lộ ậ ớp được đưa ra Lấy ví d ụtrong nh n di n khuôn mậ ệ ặt, khi xác định li u r ng có khuôn m t trong bệ ằ ặ ức ảnh hay không, vấn đề ẽ s là phân lo i m t khuôn m t ho c không có khuôn m t Các lạ ộ ặ ặ ặ ớp hay nhóm là m t t p các m u có các veộ ậ ẫ ctor đặc trưng gần gi ng nhau Nh n d ng ố ậ ạ
mẫu thông thường được phân lo i theo ki u hạ ể ọc được s dử ụng để sinh đầu ra trong bước này H c có giám sát (ti ng Anh: supervised learning) gi thi t r ng chúng ta ọ ế ả ế ằ
có m t t p d u dộ ậ ữ liệ ạy được đánh nhãn tương ứng với đầu ra mong mu n Thuố ật
Trang 1514
toán h c có giám sát phân tích d u d y và t o ra m t hàm suy lu n, hàm này ọ ữ liệ ạ ạ ộ ậđược s dử ụng để ánh x m t m u m i Yêu c u c a thu t toán là t ng quát hóa d ạ ộ ẫ ớ ầ ủ ậ ổ ữliệu dạy để có th d ể ự đoán được nh ng tình huữ ống chưa gặp ph i theo m t cách h p ả ộ ợ
lý nh t H c không giám sát gi ấ ọ ả thiế ằt r ng chúng ta có m t t p d u d y không ộ ậ ữ liệ ạđược đánh nhãn, và cố ắ g ng tìm ra các m u c h u trong d li u mà có th s d ng ẫ ố ữ ữ ệ ể ử ụđược để xác định đầu ra đúng cho mộ ữ ệu đầt d li u vào mới Hai tác v có th th c ụ ể ự
hi n v i h c không giám sát là phân nhóm d u thành các nhóm mà ệ ớ ọ ữ liệ ở đó có sựtương đồng và gi m s chi u d liả ố ề ữ ệu qua đó nén dữ ệ li u trong khi v n gi ẫ ữ được c u ấtrúc và giá tr c a d u Các k ị ủ ữliệ ỹthuật phân lo i có th là Support Vector Machine ạ ể(SVM), mạng nơ-ron (Neural networks), K-nearest neighbor, Fuzzy ART, Markov random file models, CLAss-Featuring Information Compressing (CLAFIC),…
2.1.2 Quy trình nhậ n dạng m u ẫ
Nhận d ng mạ ẫu đã được phát tri n trong nhiể ều năm nay Nó bao gồm r t ấnhiều các phương thức thúc đẩy ựs phát tri n c a m t lo t các ng d ng trong các ể ủ ộ ạ ứ ụlĩnh vực khác nhau Các thành phần cơ bản trong nh n d ng m u là ti n x lý, trích ậ ạ ẫ ề ử
xuất đặc trưng, và phân loại Khi m t t p d ộ ậ ữ liệu được yêu cầu, nó được ti n x lý ề ử
để mà phù h p vợ ới các công đoạn sau đó Bước ti p theo mà trích xuế ất đặc trưng chuyển đổ ậi t p d u sang mữ liệ ộ ập các vector đặc trưng đạt t i di n cho d li u g c ệ ữ ệ ốNhững đặc trưng này đượ ử ụng trong bước s d c phân loại để phân bi t d li u thành ệ ữ ệcác lớp khác nhau ph thu c vào bài toán ụ ộ
để xác định và khoanh vùng đối tượng Qua đó, phân tách đối tượng là m t cách ộchuyển đổi ảnh sang một đại di n cệ ó ý nghĩa hơn và dễ dàng phân tích hơn Trong
Trang 1615
m t s ng d ng, vi c phân tách các m u quan tâm trong nh g c kh i n n là rộ ố ứ ụ ệ ẫ ả ố ỏ ề ất quan tr ng ọ
Hình 2-2: a) nh g c b) Phân tách dẢ ố ựa trên năng lượng Fermi c) Phân tách sử
dụng phương thức Otsu d) Phân tách s d ng thu t toán k-means [6] ử ụ ậ
R t nhiấ ều phương thức có th s dể ử ụng để phân tách ảnh, phương thức phân tách dựa trên năng lượng Fermi (Fermi energy-based segmentation) cho chúng ta
kh ả năng xác định các vùng đặc bi t b ng s d ng các thành ph n màu s c trong ệ ằ ử ụ ầ ắảnh, năng lượng t i mạ ỗi điểm nh s ả ẽ được tính toán và so sánh v i m t giá tr ớ ộ ịngưỡng Bên cạnh đó còn có các phương thức Otsu, hay thu t toán k-means ậ
2.1.2.2 Trích xuấ t đ ặc trưng
Như đã đề ập trước đó, trích xuấ đặc trưng đượ ử ụng để c t c s d kh c ph c v n ắ ụ ấ
đề ố s chi u quá l n c a t p mề ớ ủ ậ ẫu đầu vào trong vi c nh n dệ ậ ạng Do đó, dữ ệu đầ li u vào s ẽ được chuyển đổi sang m t d ng có s ộ ạ ố chiều ít hơn đại diện là các vector đặc trưng Chỉ nh ng thông tin thích h p t d liữ ợ ừ ữ ệu đầ vào đượu c trích xuất để làm đại
di n thay vì s d ng d u g c Và hi n tay t n t i r t nhiệ ử ụ ữ liệ ố ệ ồ ạ ấ ều phương thức giúp thực hiện vi c này ệ
Trang 1716
Biến đổi Fourier
Biến đổi Fourier có kh ả năng phân tích tín hiệu trong mi n t n s M t s ề ầ ố ộ ự
d ch chuy n c a m t hàm chi u ho c hai chi u không ị ể ủ ộ ề ặ ề ảnh hưởng đến độ ớ l n c a h ủ ệ
s Fourier (thu c tính dố ộ ịch), nhưng mộ ựt s xoay c a m t hàm s xoay s biủ ộ ẽ ự ến đổi Fourier một góc tương ứng (thuộc tính xoay) Nó được s dử ụng đểloạ ỏ ệu ứi b hi ng
d ch vòng trong miị ền đặc trưng bằng vi c lệ ấy cường độ phổ ủ c a các h s Fourier ệ ố
rồi sau đó trích xuất các vector đặc trưng không biến đổi theo chi u xoay[2] ề
Biến đổi Radon
Biến đổi Radon là m t ánh x t các tộ ạ ừ ọa độ (x,y) trong h tệ ọa độ Đề -các sang kho ng cách và m t góc hay còn g i là tả ộ ọ ọa độ ự c c S d ng biử ụ ến đổi Radon trên
một ảnh đại di n b ng hàm f(x,y) cho m t t p các góc có th ệ ằ ộ ậ ể được coi là tính toán
s ựchiếu xu ng c a hình nh dố ủ ả ọc theo các góc đó Các hình chiếu thu được là tổng
của cường độ các điểm ảnh theo mỗi hướng Biến đổi này có th bể ắt được hi u qu ệ ảcác đặc trưng hướng trong m t m u nh b ng vi c chi u m u ộ ẫ ả ằ ệ ế ẫ ảnh đó lên các mặt định hướng khác nhau Ngoài ra, biến đổi Radon cũng có thể được th c hi n trong ự ệmiền Fourier[2]
Biến đổi Gabor wavelet
Biến đổi Gabor wavelet là biến đổi được xây d ng d a trên biự ự ến đổi wavelet,
có th s d ng cho trích xuể ử ụ ất đặc trưng Biến đổi này cung c p gi i pháp tấ ả ối ưu cho
c ả miền th i gian và mi n t n s cho các phân tích th i gian-t n s Biờ ề ầ ố ờ ầ ố ến đổi nãy cũng có nề ản t ng tối ưu cho trích xuất các đặc trưng cục b cho nh n d ng mẫu và ộ ậ ạ
nó có ba s ự thúc đẩy: sinh h c, toán h c và th c nghi m Do s ọ ọ ự ệ ự tương đồng sinh
h c v i h ọ ớ ệthống th ị giác con người, biến đổi Gabor wavelet được s d ng r ng rãi ử ụ ộtrong các ng d ng nh n dứ ụ ậ ạng đối tượng Với mộ ập các Gabor wavelet được chọn t tcác tham s ố ban đầu, m t cách ti p cộ ế ận thông thường để trích xuất đặc trưng là xây
d ng mự ột vector đặc trưng bằng k t n i các thành ph n bên t ng c a mế ố ầ ro ủ ộ ứ ảt b c nh
v i m i wavelet Thay vì tìm ki m m t t p các Gabor wavelet x p x ớ ỗ ế ộ ậ ấ ỉ ảnh đã cho,
Trang 1817
chúng ta tìm các Gabor wavelet được hi u chệ ỉnh để phân bi t mệ ột đối tượng với
những đối tượng khác Điều này làm gi m tính toán và b nh s d ng Các thuả ộ ớ ử ụ ật toán tăng tốc có th ể được s dử ụng để ự l a ch n ch nh ng Gabor wavelet thích h p, ọ ỉ ữ ợchúng có nh ng m c tiêu trong l a ch n m t s ữ ụ ự ọ ộ ố lượng các phân lo i yạ ếu để ổ t ng
h p thành m t phân lo i m nh m ợ ộ ạ ạ ẽ hơn[5]
Vector bất bi n m Fuzzy invariant vector ế ờ –
Khi một vector đặc trưng bất biến được trích xuất, sau đó được chuyển đổi sang vector b t bi n m Vi c chuyấ ế ờ ệ ển đổi này có th ể tăng tính phân biệt và làm
giảm tác động c a nhi u t n s ủ ễ ầ ốthấp Vector b t bi n m ấ ế ờ được tính toán s d ng các ử ụ
s mố ờ Thông thường, ph ổ năng lượng c a m t mủ ộ ẫu đầu vào được tính toán với
biến đổi Fourier s có r t ít các t n s chính, s ẽ ấ ầ ố ẽ ảnh hưởng đến vi c phân bi t các ệ ệ
m u V i vector b t bi n m , m i sóng hài (ti ng Anh: harmonic) c a m t mẫ ớ ấ ế ờ ọ ế ủ ộ ẫu đầu vào đều có phân b ố tương tự nhau và một đặc trưng, cái cho sự phân bi t tệ ốt hơn vector b t bi n gấ ế ốc Thêm vào đó, khi thêm nhiễ ầu t n s ốthấp vào nh, m t vài sóng ả ộhài cho th y giá tr ấ ị cao hơn hoặc nh ỏ hơn dải bình thường trong ph ổ năng lượng của
m u V i m t hàm mẫ ớ ộ ờ, năng lượng c a m i hài c a mủ ỗ ủ ẫu đầu vào được ánh x gi ng ạ ố
hệt nhau đến m t vài s m , nh ng giá tr ộ ố ờ ữ ị này được ánh x n 1 hoạ đế ặc 0 Do đó ảnh hưởng c a nhi u t n s thủ ễ ầ ố ấp được lược giảm đi
2.1.2.3 Phân loại
Trong quá trình ti n hành phân lo i, h ế ạ ệthống s dử ụng các đặc trưng đã trích
xuất trong giai đoạn trướ ừ ỗc t m i mẫu để nh n d ng chúng và phân lo i chúng vào ậ ạ ạcác l p thích h p B phân lo i ch a các hi u bi t v m i lo i mớ ợ ộ ạ ứ ể ế ề ỗ ạ ẫu, cũng như tiêu chí, s ố liệu để phân bi t các m u v các l p khác nhau, là các b phân lo i thuệ ẫ ề ớ ộ ạ ộc nhóm h c có giám sát Lo i h c không có giám sát, ọ ạ ọ ở đó các tham số được thay đổi thích nghi b ng vi c ch s d ng thông tin cằ ệ ỉ ử ụ ủa đầu vào, ràng bu c b i các quy luộ ở ật
n i b ộ ộ được quy định trước, các b phân lo i thu c lo i này c g ng tìm các m u c ộ ạ ộ ạ ố ắ ẫ ố
h u trong d u có th s dữ ữliệ ể ử ụng được đ tìm đầu ra đúng khi đầể u vào là m ới
Trang 1918
Lý thuyết cộng hưởng thích nghi m - Fuzzy ART ờ
Mạng nơ-ron lý thuy t cế ộng hưởng thích nghi m có th ở ể được s dử ụng như
m t b phân lo i vector không có giám sát Lý thuy t cộ ộ ạ ế ộng hưởn thích nghi m ờtương thích vớ ộ não con người b i trong vi c x lý thông tin, nó có kh ệ ử ả năng học và
nh mớ ột lượng l n các khái ni m theo cách th c mà không nh t thi t d n t i s tớ ệ ứ ấ ế ẫ ớ ự ồn
t i nh ng th s b lãng quên Lý thuy t cạ ữ ứ ẽ ị ế ộng hưởng thích nghi m có kh ờ ả năng phân loại các vector đầu vào gi ng nhau Ngoài ra nó có th thích nghi t o ra mố ể ạ ột cái mới tương ứng v i m t mớ ộ ẫu đầu vào n u nó không gi ng v i b t k ế ố ớ ấ ỳloại hi n có ệnào ART1 là mô hình đầu tiên c a ART có th h c ủ ể ọ ổn định làm th ế nào để phân loại mẫu đầu vào nh ị phân được th hi n theo trình t tùy ý Lý thuy t các t p m ể ệ ự ế ậ ờ
có th bể ắt chước quá trình suy nghĩ sâu, rộng của con người Do đó mô hình lý thuy t cế ộng hưởng m k t h p các tính toán t lý thuy t t p m vào mờ ế ợ ừ ế ậ ờ ạng nơ-ron ART1, có kh ả năng học nhanh v i nh ng chu i tùy ý c a các mớ ữ ỗ ủ ẫu đầu vào là tương
t ho c nh ự ặ ị phân Ngưỡng nh n d ng là m t tham s ậ ạ ộ ố ảnh hưởng đến hiệu năng của Fuzzy ART, nó được đánh giá qua t l nh n d ng S k t h p Fuzzy ART và Vecto ỉ ệ ậ ạ ự ế ợ
bất biến m (FIV) mang lờ ại hiệu qu ảcao
Mạng nơ-ron
Cách ti p c n mế ậ ạng nơ-ron áp d ng các khái ni m sinh h c vào trong máy ụ ệ ọtính để nh n d ng mẫu Đây là mộậ ạ t công c mạụ nh có hiệu năng cao trong bài toán
nh n d ng mậ ạ ạng nơ-ron nhân tạo được xây d ng d a trên nh ng hi u bi t v sinh ự ự ữ ể ế ề
lý c a b ủ ộ não con người Mạng nơ-ron bao g m m t loồ ộ ạt các đơn vị liên k t khác ếnhau, nó là m t ánh x gi a tộ ạ ữ ập đầu vào và tập đầu ra Vì vấn đề phân lo i là ánh x ạ ạ
t không ừ gian đặc trưng đến m t vài tộ ập đầu ra, chúng ta có th chính th c hóa ể ứ
mạng nơ ron, đặ- c bi t mệ ạng nơ-ron hai l p là m t b phân lo i Mớ ộ ộ ạ ặc dù phương pháp thông thường là ch n m t m ng t t nh t trong s các m ng ng viên, tuy ọ ộ ạ ố ấ ố ạ ứnhiên cách ti p c n tế ậ ốt hơn là g ữi nhi u m ng và ch y chúng v i m t chiề ạ ạ ớ ộ ến lược thích h p Nhi u m ng k t h p cho k t qu ợ ề ạ ế ợ ế ả cao hơn Ý tưởng cơ bản c a vi c s ủ ệ ử
d ng nhi u mụ ề ạng là để phát tri n N mể ạng nơ ron đượ- c dạy độc l p vậ ới các đặc
Trang 20là k thu t t ng hỹ ậ ổ ợp nơi mà việc phân lo i m t giá tr u vào ph ạ ộ ị đầ ụ thuộc vào một
t p cậ ác phép đo giá trị c; ho c k thu t b phi u xem xét k t qu c a m i mtrự ặ ỹ ậ ỏ ế ế ả ủ ỗ ạng như là đánh giá của chuyên gia
Trường ng u nhiên Markov ẫ
Các mô hình trường ng u nhiên Markov có b n chẫ ả ất đa chiều, để nh n d ng ậ ạ
m u, chúng t h p các thông tin th ng kê và thông tin c u trúc Các trẫ ổ ợ ố ấ ạng thái được
s dử ụng để mô hình các thông tin th ng kê và các m i quan h gi a các tr ng thái ố ố ệ ữ ạđược s dử ụng để đạ i di n cho thông tin v c u trúc Ch các t p tr ng thái t t nh t ệ ề ấ ỉ ậ ạ ố ấnên được xem xét Các hàm năng lượng toàn c c h p lý nh t có th ụ ợ ấ ể được vi t l i ế ạ
v i hai ph n, mớ ầ ột đượ ử ụng đểc s d mô hình thông tin cấu trúc (thông tin được bô t ả
b i m i quan h gi a các tr ng thái), ph n còn l i mô hình thông tin th ng kê b i vì ở ố ệ ữ ạ ầ ạ ố ở
nó là xác suất đầu ra c a m t quan sát và tr ng thái Quá trình nh n dủ ộ ạ ậ ạng là để ối t
hiểu hóa hàm năng lượng h p lý (likelihood energy function), hàm t ng c a các ợ ổ ủhàm đơn[1]
Máy vector h - Support vector machine ỗtrợ
B phân lo i máy vector h ộ ạ ỗtrợ (SVM) đã được chứng minh là r t thành công ấtrong nhi u ng d ng S c mề ứ ụ ứ ạnh c a SVM là kh ủ ả năng xử lý không ch d li u có ỉ ữ ệthể phân chia tuy n tính mà còn d u có th phân chia không tuy n tính b ng s ế ữliệ ể ế ằ ử
d ng các hàm h t nhân (kernel functions) Hàm h t nhân có th ánh x các m u dụ ạ ạ ể ạ ẫ ạy trong không gian đầu vào t i mớ ột không gian đặc trưng để mà các m u dẫ ạy được ánh x này là có th phân chia tuy n tính Các hạ ể ế ạt nhân SVM được s dử ụng thường
Trang 2120
xuyên là: đa thức, hàm cơ sở Gaussian radial, hàm cơ bản mũ, hàm nội suy spline, wavelet và tự tương quan wavelet[5][3] V m t lý thuyề ặ ết, các đặc trưng có số chi u ề
b t k có th ấ ỳ ể được cho vào SVM để ạy, nhưng thự ế, các đặc trưng có số d c t chiều
lớn khi đưa vào SVM sẽ ph i tr ả ả giá lượng tính toán và b nh l n trong vi c dộ ớ ớ ệ ạy
và phân loại Do đó trích xuất đặc trưng và chựa chọn đặc trưng là một bước quan
trọng trước khi phân loại SVM
Máy vector h nhi u l p Multi-class SVM ỗtrợ ề ớ –
H ệ thống đa bộ phân lo i d a trên SVM s d ng cho nh n d ng mạ ự ử ụ ậ ạ ẫu nh m ằ
mục đích đạt được độ chính xác phân loại cao hơn các bộ phân loại đơn lẻ T hổ ợp các b phân lo i có kh ộ ạ ả năng bổ sung cho các l i do các bô phân lo i riêng r t o ra ỗ ạ ẽ ạtrên các ph n khác nhau cầ ủa không gian đầu vào Chiến lượ ổ ợc t h p này d a trên ựchồng ch t t ng h p, nó bao g m c u trúc hai c p: cấ ổ ợ ồ ấ ấ ấp cơ sở, siêu câp (meta-level)
Cấp cơ sở là m t mô-ộ đun của N loạ ội b phân lo i dạ ựa trên SVM được d y b N t p ạ ở ậđặc trưng Siêu cấp là m t mô-ộ đun của b phân lo i có quyộ ạ ết định d a trên SVM ựđược d y b i tạ ở ập đặc trưng đượ ạc t o ra bằng cơ chế dung h p d liợ ữ ệu Ý tưởng chính c a vi c x p chủ ệ ế ồng là để ổ ợ t h p các b phân lo i theo các ngu n d y khác ộ ạ ồ ạnhau M t khi các b phân loộ ộ ại đượ ạc t o ra, chúng phải đượ ổ ợc t h p Trong phân loại nhi u l p, r t nhiề ớ ấ ều phương thức đượ ử ục s d ng, m t trong s ộ ố đó là phương thức
m t ch ng l i t t c (one-ộ ố ạ ấ ả against-all), khi s lố ớp là N, phương thức này xây d ng N ự
b phân lo i SVM, m i b phân lo i mộ ạ ỗ ộ ạ ột lớp dương và N-1 l p âm ớ
2.1.3 So sánh giữa các phương thức phân lo i ạ
Bảng dưới đây tóm tắt các đặc tính c a lý thuy t củ ế ộng hường thích nghi mờ (Fuzzy ART), trường ng u nhiên Markov, mẫ ạng nơ-ron, SMV hay SVM đa lớp
Mỗi phương thức có đặc điểm và l i th riêng Tùy vào mợ ế ỗi ứng d ng, mụ ột phương pháp hi u qu , phù h p s ệ ả ợ ẽ được sử ụ d ng
Trang 2221
B ng 2-1ả : So sánh các phương pháp phân loại
Phương thức phân loại Đặc trưng
Fuzzy ART Có khả năng học nhanh, ổn định để nhận dạng các chuỗi
đầu vào tương tự hoặc nhị phân tùy ý
Khả năng chống chiễu cao
Cần tìm mức ngưỡng tối ưu
Mạng nơ-ron Có khả năng hình thành các vùng quyết định phức tạp
Khả năng phân biệt mạnh mẽ
Khả năng học và đại diện hiểu biết ngầm
Có thể tổ hợp nhiều mạng
Trường ngẫu nhiên
Markov
Bản chất đa chiều
Các thông tin thống kê, cấu trúc được tổ hợp
SVM Xử lý dữ liệu có thể phân chia không tuyến tính
Có thể xử lý hiệu quả số lương rất lớn các đặc trưng Bất kỳ giải pháp cục bộ cũng là tối ưu toàn cục
SVM đa lớp Linh hoạt, mềm dẻo
Khả năng tổng quá hóa tốt trong khi tránh quá tải
Độ chính xác cao so với các bộ phân loại riêng rẽ
Bổ sung cho các lỗi từ các bộ phân loại riêng rẽ
2.2 Giớ i thi u v ệ ề nhận ạ d ng ch t tay ữ viế
Trong vài th p k qua, v i s n b c a công nghậ ỷ ớ ựtiế ộ ủ ệ, các máy tính tương tác nhiều hơn, hiệu qu ả hơn với con người và th gi i t nhiên, ví d ế ớ ự ụ như: nhận diện
gi ng nói, ch vi t tay, c ọ ữ ế ử chỉ,… Tuy nhiên, con người vượt tr i so v i máy móc ộ ớtrong nh n d ng m u M t s nhi m v nói chung là d dàng vậ ạ ẫ ộ ố ệ ụ ễ ới con người ch ng ẳ
hạn như nhận d ng gi ng nói t n s cao, t c d cao, nh n diạ ọ ở ầ ố ố ộ ậ ện mùi hương của hoa, xác định ký tự,….Nhưng những bài toán c m nh n này l i r t khó cho máy tính ả ậ ạ ấ
bởi vì dữ liệ u h n h p l n và thông tin n trong mỗ ợ ớ ẩ ỗi loại mô hình
Trang 23b mề ặt nào đó Kể ừ ấ t r t lâu r i, giồ ấy đã được s d ng là b m t ph biử ụ ề ặ ổ ến để ế vi t Trước s ti n b c a công ngh , hi n nay m t b m t mự ế ộ ủ ệ ệ ộ ề ặ ới đượ ạo ra Đó là màn c thình cảm ứng c m nhả ận độ nh y áp l c lên b mạ ự ề ặt Trên cơ sở ề b mặt được s ử
d ng, công ngh nh n d ng ch viụ ệ ậ ạ ữ ết tay được chia làm hai lo i: tr c tuy n và ngoạ ự ế ại tuy n ế
Quá trình chuyển đổi trong lĩnh vực máy tính cá nhân t ừ máy để bàn cho đến thiế ị ầm tay, nó đòi hỏt b c i mộ ự thay đổt s i trong cách th c nh p phù h p v i m t ứ ậ ợ ớ ộtay hơn là bàn phím Nhận d ng ch vi t tay tr c tuyạ ữ ế ự ến cho phép các phương thức
đầu vào như vậy Trong nh n di n ch vi t tay tr c tuy n, các t ậ ệ ữ ế ự ế ừ được vi t trên m ế ộ
b m t cề ặ ảm ứng, cho thông tin th i gian th c, ch ng hờ ự ẳ ạn như thứ ự ủ t c a nét ch cữ ủa người viết được thu nhận và lưu trữ dướ ại d ng tọa độ hai chi u cề ủa các điểm liên tiếp nhau Máy tính có th ể lưu trữ một lượng r t l n thông tin ch trong m t con ấ ớ ỉ ộchip nhỏ, do đó giảm thiểu không gian lưu trữ Tuy nhiên, d u l n trên th giữ liệ ớ ế ới
v n t n t i trên giẫ ồ ạ ấy, như những tài li u l ch s quan tr ng, sách, h ệ ị ử ọ ồ sơ,… Việc chuyển đổi yêu c u chuy n thầ ể ông tin văn bản trên giấy sang lưu trữ dướ ạng điệi d n
t Quá trình này g i là s hóa L i ích c a s hóa bao g m giử ọ ố ợ ủ ố ồ ảm không gian lưu trũ, dễ dàng sửa đổi, tìm ki m nhanh, truy xuế ất nhanh hơn, suy luận các thông tin
mới từ ữ liệ d u hi n có ệ
Có hai cách thông thường cho vi c s hóa: m t là nh p li u d u có s n ệ ố ộ ậ ệ ữ liệ ẵtrên gi y m t cách th công b ng sấ ộ ủ ằ ức người, hai là s d ng các thi t b ử ụ ế ị điệ ử như n t máy quét Trong cách ti p cế ận cũ, nơi con người ti n hành s ế ố hóa, nó đòi hỏ ất i rnhi u công s c t ề ứ ừ con người, chi phí cho vi c nh p li u b ng tay là r t l n Tệ ậ ệ ằ ấ ớ rong khi đó, sử ụ d ng máy móc trong quá trình s hóa s chuyố ẽ ển đổi m t m nh gi y sang ộ ả ấ
Trang 2423
một định dạng điệ ử ản t - nh So sánh hai cách ti p c n này, cách m t có l i th khi ế ậ ộ ợ ế
d u có th ữ liệ ể được c p nh t d dàng trong quá trình nh p nậ ậ ễ ậ ếu có thay đổi nhưng
h n ch v ạ ế ề thời gian, công s c Cách hai có l i th ứ ợ ế khi lưu trữ dướ ại d ng nh, có ảthể chuyển đổi sang dạng văn bản ch nh sỉ ửa được, qua đó dễ dàng trong vi c tìm ệ
ki m, xóa b , c p nh t thông tin ế ỏ ậ ậ
Chuyển đổi hình nh thành dả ạng văn bản ch nh sỉ ửa được đòi hỏi phải định danh các ký t t ự ừ ảnh đầu vào có được sau khi s hóa thông tin t gi y, chúng ta gố ừ ấ ọi
là nh n d ng ký t ngo i tuy n Ch có s n trên gi y có th là vi t tay ho c in máy ậ ạ ự ạ ế ữ ẵ ấ ể ế ặTrong nh n d ng ch ậ ạ ữviết tay ngo i tuyạ ến, thông tin là tĩnh Nhận d ng ch vi t tay ạ ữ ếngo i tuy n là quá trình tìm ki m các ch cái, t ng ạ ế ế ữ ừ ữ trong ảnh Kh ả năng nhận
d ng ch vi t tay là m t thách th c nghiên c u vì s biạ ữ ế ộ ứ ứ ự ến đổ ủi c a m t lo t các tham ộ ạ
s Các thu t toán nh n d ng ký t khác nhau b i vì th c t r ng, m c dù tài liố ậ ậ ạ ự ở ự ế ằ ặ ệu được vi t v i ch m t b ngôn ng ế ớ ỉ ộ ộ ữ nhưng có rất nhi u y u t ề ế ố ảnh hưởng đến vi c ệ
nh n d ng Có th k ậ ạ ể ể ra như sau: bộ tiêu chu n các ch cái (ti ng Anh, tiẩ ữ ế ếng Việt,…), quy định v ề hướng vi t (t trái qua ph i, t ph i qua trái, t trên xu ng ế ừ ả ừ ả ừ ốdưới,…), hay kịch b n vi t (c u thả ế ẩ ả, nghiêng, cách điệu,…)[8]
Đặc trưng bản thảo
ngôn ngữ
Tính chất của kich bản viết
Viết cong, không cong, ký
tự sửa đổi tiêu đề dòng ,
Hình 2-3: Các đặc trưng của k ch b n ngôn ng [11] ị ả ữ
Trang 2524
Để chi tiết hơn về ự s khác nhau gi a nh n d ng ch in và ch vi t tay, ph n ữ ậ ạ ữ ữ ế ầdưới đây sẽ nói v hai lo i này ề ạ
Hình 2-4: Các phân vùng c a nh n d ng ch [15] ủ ậ ạ ữ2.2.1 Nhận dạng ch ữin
N u m t tài li u ch ế ộ ệ ữ in được quét và chuyển đổi thành d ng nh, vi c tìm ạ ả ệ
ki m thông tin t ế ừ đó là không thể Do đó việc chuyển đổi sang d ng ch nh sạ ỉ ửa được
s d ng m t phông ch , hoử ụ ộ ữ ặc nhiều phông ch ữ
Văn bản s d ng m t phông ch s r t d dàng cho vi c nh n d ng vì m i ký ử ụ ộ ữ ẽ ấ ễ ệ ậ ạ ỗ
t u gi ng nhau trong toàn b ự đề ố ộ văn bản
Trang 2625
Văn bản s d ng nhi u phông ch s có m t chút thách th c khi không bi t ử ụ ề ữ ẽ ộ ứ ếtrước có bao nhiêu phông ch ữ được s d ng M t vài phông nhìn g n gi ng nhau ử ụ ộ ầ ốnhưng khi phóng to lên sẽ có s khác bi t v m nhự ệ ề độ đậ ạt, độ cong, kích thước,… 2.2.2 Nhận dạng ch vi t tay ữ ế
Trong k nguyên s hóa, các thi t b ỷ ố ế ị điệ ửn t thự ự trở nên thông minh hơn, c s đòi hỏi m t giao tiộ ếp đơn giản giữa máy tính và con người Nh n d ng ch vi t tay ậ ạ ữ ế
t ng là m t trong nhự độ ộ ững lĩnh ựv c có ng d ng rứ ụ ộng rãi Lĩnh vực này thu hút nghiên cứu nhưng cũng đầy thách th c Ch vi t cứ ữ ế ủa người này khác nhười khác, đôi khi nó cũng là đặc trưng để xác định ch cữ ủa người nào Hay có nh ng lúc mà ữchúng ta cũng không thể ể hi u nội dung được vi t b i mế ở ột người khác Đây đúng là
một lĩnh vực h p d n cho các nhà nghiên cấ ẫ ứu để tìm ra cách gi i quy t vả ế ới độ chính xác cao Chúng ta xét hai h ng c a nh n d ng ch vi t tay[12] ướ ủ ậ ạ ữ ế
2.2.2.1 H ệ thố ng nh n d ng ch ậ ạ ữviết tay trự c tuy n ế
Ở ệ ống này, người dùng đượ h th c cho phép s d ng chiử ụ ếc bút điệ ửn t ho c ặđầu ngón tay để ạ t o ra ch vi t, nó t o ra s ti n l i và t ữ ế ạ ự ệ ợ ự nhiên để nh p li u khi s ậ ệ ử
d ng các thi t b c m tay Trong nh n d ng tr c tuy t, thông tin v ụ ế ị ầ ậ ạ ự ế ề hướng và các đặc trưng của ký t s ự ẽ được thu th p Vi c nh p li u tr c tuy n là r t ti n l i cho ậ ệ ậ ệ ự ế ấ ệ ợcon người khi chúng ta không cần quan tâm đến khía c nh k thu t, công ngh c a ạ ỹ ậ ệ ủthiế ịt b , ch ỉ đơn giản là s d ng các thi t b h ợ hay đầu ngón tay đểử ụ ế ị ỗ tr nh p li u ậ ệtheo phong cách riêng của mình
Trong văn bản vi t tay tr c tuyế ự ến, các điểm của đầu bút s ẽ được thu th p ậtheo các kho ng th i gian b ng nhau b ng cách b t các c p tả ờ ằ ằ ắ ặ ọa độ (x,y) của đầu bút,
vi c nâng bút lên, h bút xu ng s làm cho nét ch b t quãng, tr ệ ạ ố ẽ ữ ị đứ ở nên khó khăn trong nhận d ng ạ
Các thu c tính c n yêu c u trong nh n d ng ki u này là: ộ ầ ầ ậ ạ ể
Các điểm b t đắ ầu (đặt bút) và k t thúc (nh c bút) khi vi t m t ký t ế ấ ế ộ ự
Trang 2726
Hướng vi t: t trái qua ph i, t ph i qua trái, t trên xuế ừ ả ừ ả ừ ống dướ ừi, t dư i ớlên trên
Xác định các thu c tính hình h c: phát hi n vi n, phát hi n dòng s d ng ộ ọ ệ ề ệ ử ụhướng vi t và t a đ ế ọ ộ
Khi người dùng vi t trên thi t b c m ng, các thông tin th i gian th c ế ế ị ả ứ ờ ựđược lưu trữ như tọa độ ự, l c vi t (đ i diế ạ ện cho độ đậ m nh t c a nét ch ) ạ ủ ữ
s ẽ được thu thập
B ng s ph ằ ự ụ thuộc vào người vi t, chúng ta có th chia thành hai lo ph ế ể ại: ụthuộc người vi t, không ph ế ụ thuộc người vi t H thông ph ế ệ ụthuộc người viết, đầu tiên người dùng cung cấp các thông tin đầu vào c u trúc cho công c nh n d ng, ấ ụ ậ ạqua đó công cụ ẽ đượ s c d y và có kh ạ ả năng để xác định ch vi t cữ ế ủa người đó Hệ
thống này cần người dùng đầu tư thời gian để ạ Ở phía đố ậ d y i l p, h ống không ệth
ph ụthuộc người viết, người dùng có th bể ắt đầu h ệ thống mà không ph i quan tâm ả
đến công c phía trong ụ
2.2.2.2 H ệ thống nh n d ng ch vi t tay ngo i tuy n ậ ạ ữ ế ạ ế
Ở ệ ố h th ng nh n d ng ngo i tuy n s dậ ạ ạ ế ử ụng bút, người dùng vi t lên gi y, sau ế ấ
đó trang giấy s ẽ được quét để ố hóa và lưu trữ dướ ạ s i d ng nh Xem xét m t k ch ả ộ ị
b n khi mả ột ngườ ửi g i một thư điệ ử đính kèm mộ ản t t b n copy s hóa c a ch vi t ố ủ ữ ếtay cho một người khác Nếu người nh n mu n sậ ố ửa đổi tài liệu này để ph c v mụ ụ ục đích khác thì sẽ không th th c hiể ự ện được Định d ng nh không cung c p cho ạ ả ấchúng ta các phép tìm ki m, sế ửa đổi,… Qua đó, hệ thống nh n d ng ch vi t tay ậ ạ ữ ếngo i tuy n s giúp chuyạ ế ẽ ển đổi định dang ảnh sang định dạng văn bản cho phép các thao tác thêm, sửa, xóa tùy vào mục đích khác nhau
H ệ thống nh n d ng ch vi t tay ngo i tuy n th c s không yêu cậ ạ ữ ế ạ ế ự ự ầu người dùng có ki n th c v ế ứ ềhoạt động c a thi t b M t cách t nhiên nhủ ế ị ộ ự ất, người dùng ch ỉ
c n vi t lên m t t giầ ế ộ ờ ấy Đầu vào c a h ủ ệthống này có th là các ký t riêng bi t hay ể ự ệnhóm các dòng, các t , các ký t ừ ự
Trang 28đối m t v i vặ ớ ấn đề văn bản đầu vào được viết dưới nhi u b ch , ngôn ngề ộ ữ ữ Điều này gây ra thách th c khi b nh n d ng ph i tìm ki m và so sánh các b ứ ộ ậ ạ ả ế ộ chữ khi
Ứng d ng chuyụ ển đổi văn bản d ng nh sang d ng text ạ ả ạ
Hiện tay nhu c u s hóa nh ng tài liầ ố ữ ệu văn bản viết tay đang tăng lên Số hóa
nh ng ghi chép, nh ng nghiên c u, hay nh ng thông tin l ch s ữ ữ ứ ữ ị ử được vi t tay s ế ẽđem lạ ợi l i ích lớn như chuyển sang dạng lưu trữ lâu dài, giảm không gian lưu trữ,
ti t kiế ệm chi phí cho vi c nhậệ p li u lệ ại bằng con người, rút ng n th i gian th c hiện ắ ờ ự
Trang 3029
• Ứng d ng Smart Select c a Samsung ụ ủ
Hình 2-7 : Ứ ng d ng Smart Select c a Samsung (gụ ủ ọi điện nhanh t i s ớ ố được viết
tay)
Ứng d ng trong phân loụ ại thư tại bưu cục
Trong phân loại thư tại bưu cục, v i s ớ ố lượng thư được g i và s a ch ử ố đị ỉ đích
là r t l n Vi c phân lo i bấ ớ ệ ạ ằng con ngườ ẽi s tiêu t n r t nhi u công s c, ti n b c Do ố ấ ề ứ ề ạ
đó để rút ng n th i gian, công s c, ti t ki m chi phí, chúng ta có th ắ ờ ứ ế ệ ể nghĩ tới vi c t ệ ự
động hóa b ng H thông này có th phân loằ ệ ể ại các bì thư thành các nhóm địa ch ỉđích Hệ th ng hoàn toàn có th s d ng nh n dố ể ử ụ ậ ạng địa ch ỉ đích bằng ch vi t tay ữ ế
địa ch ho c ch s vi t tay cỉ ặ ữ ố ế ủa mã bưu cục Chúng ta hoàn toàn có th thi t k ể ế ếbăng chuyền để các bì thư chạy trên đó Ảnh của bì thư sẽ được camera ch p l i, ụ ạqua h ệ thống nh n dậ ạng để xác định địa ch ỉ đích, rồi cu i cùng ra lố ệnh cho cơ cấu
cơ khí phân loại vào nhóm đã được xác định
Trang 3130
Ứng d ng trong ngân hàng trong s d ng t séc (cheques) ụ ử ụ ờ
Các t séc trong ngân hàng có giá tr ờ ị được định giá b ng ch vi t tay ch s ằ ữ ế ữ ốtrên đó Chúng ta hoàn toàn có thể xây d ng h ự ệ thống nh n d ng nh ng ch s ậ ạ ữ ữ ố đó
một cách tự động đem lại nhiề ợi ích.u l
Ứng d ng khác ụ
Khi h ệ thống nh n d ng ch viậ ạ ữ ết tay đạt đến độ chính xác cao, chúng ta có
thể nghĩ tới các h ống thông minh như chuyểệ th n dạng văn bản c ng thành gi ng ứ ọnói trong giúp đỡ ngườ ị mù đọi b c được văn bản, trong ra l nh cho rô-b t h tr con ệ ố ỗ ợngười,…
2.4 K t lu ế ận chương
Chương này giới thi u v t ng quan c a nh n d ng m u, nh n d ng ch vi t ệ ề ổ ủ ậ ạ ẫ ậ ạ ữ ếtay và m t s ng d ng d a trên các thu t toán nh n dộ ố ứ ụ ự ậ ậ ạng này Qua chương này chúng ta có thể ấ th y nh ng khía c nh v ữ ạ ề quy trình cũng như lý thuyế ủt c a những mô hình này Chương kế ế ti p s trình bày c th v thu t toán nh n d ng ch vi t tay-ẽ ụ ể ề ậ ậ ạ ữ ếchủ đề chính c a luủ ận văn, những bước làm và thuật toán, phương pháp xử lý c th ụ ểcho từng giai đoạn
Trang 32Mục đích của luận văn này là xây dựng một chương trình gồm các thu t toán ậ
để chuyển đổi thông tin dưới d ng ch vi t tay sang m t d ng thông tin khác mà ạ ữ ế ộ ạmáy tính có th hiể ểu được Luận văn sẽ ử ụ s d ng các thu t tậ oán được h bỗtrợ ởi thư
vi n x ệ ử lý ảnh opencv cho vi c trích xu t ký t và mệ ấ ự ạng nơ ron để- ph c v nh n ụ ụ ậ
Trang 3332
3-1: Ví d v u vào Hình ụ ề ảnh thô đầ
Quy trình ti n x ề ửlý ảnh trải qua các giai đoạn sau:
Chuyển đổi từ ảnh màu sang
ảnh xám
Làm mờ bằng thuật toán Gaussian Blur
Hình 3-2: Sơ đồ các bước tiề n x ửlý ả nh
3.1.1 Chuyển ảnh màu sang nh xám ả
Trong m t bài toán mà chúng ta ch cộ ỉ ần sử ụ d ng hình d ng cạ ủa đ i tưố ợng mà không quan tâm đến màu s c cắ ủa đối tượng, thì vi c chuyệ ển đổi sang nh xám là r t ả ấ
c n thi t Chúng ta không nh ng s ầ ế ữ ẽ loạ ỏ đượi b c thành ph n không có giá tr , mà ầ ịcòn làm gi m s ả ốchiều, s kênh c a bố ủ ức ảnh T nh màu có ba kênh RGB, chúng ta ừ ảđưa về ả nh xám m t kênh Giá tr t i mộ ị ạ ỗi điể ảm nh c a nh xám s i diủ ả ẽ đạ ện cho độđen tại đó, giá trị này n m trong d i t ằ ả ừ 0 đến 255 Giá tr ị 0 đại di n cho mệ àu đen,
255 đại di n cho màu tr ng ệ ắ
Trang 34Làm m nh là mờ ả ột trong các phương pháp được s d ng trong ti n x ử ụ ề ử lý
ảnh Mục đích của vi c làm này là gi m nhi u và giệ ả ễ ảm độ chi ti t không c n thi t ế ầ ế
của ảnh, qua đó cho chúng ta mộ ức ảnh mượt hơn Nhìn một b t cách chi tiết hơn, chúng ta đã làm mượ ựt s chuyển đổi màu s c t bên này sang bên kia mắ ừ ột đường
c nh c a bạ ủ ức ảnh, thay vì có m t s ộ ự thay đổi đột ng t Làm m là m t ví d cộ ờ ộ ụ ủa
vi c s d ng b l c thông th p vào x ệ ử ụ ộ ọ ấ ử lý ảnh Có m t vài thu t toán làm m nh ộ ậ ờ ảđượ ử ục s d ng trong opencv như làm mờ trung bình, làm m Gaussian ờ
Làm m trung bình ờ –Averaging blur
Phương pháp này sử ụ d ng m t hộ ạt nhân có kích thước XxX v i X là s l , – ớ ố ẻ
nó đơn giản là đặ ạt h t nhân này vào m t pixel trên b c nh, tính t ng t i t t c X*X ộ ứ ả ổ ạ ấ ảgiá tr ị điểm ảnh trong hạt nhân, sau đó lấy trung bình Giá tr t i tâm h t nhân s ị ạ ạ ẽđược thay th b ng giá tr ế ằ ị trung bình Sau đây là ví dụ ề ạt nhân có kích thướ v h c 3x3
Trang 3534
L y ví d mấ ụ ột vùng điểm ảnh sau khi áp d ng hụ ạt nhân 3x3 Giá trị ạ t i tâm
hạt nhân sẽ thay đổi bằng (16 + 20 + 30 + 17 + 18 + 25 + 20 + 23 + 20)/9 = 21
Làm m ờGausian – Gaussian blur
Gaussian blur sử ụng phương pháp thự d c hiện tương tự Averaging blur, s ử
d ng h t nhân v i s ụ ạ ớ ố chiề ẻ ựu l S khác bi t gi a hai lo i làm m này nệ ữ ạ ờ ằm ở cách
thức mà các giá tr ị điểm ảnh trong hạt nhân được đánh trọng s khi tính toán Trong ốAveraging blur các điể ảm nh trong hạt nhân được đánh trọng s bố ằng nhau, do đó đơn giản là l y trung bình Trong Gaussian blur, mấ ỗi điểm nh trong h t nhân g n ả ạ ầtrung tâm hạt nhân hơn sẽ mang tr ng s ọ ố cao hơn so với điểm ảnh xa trung tâm
3-5 hàm Gaussian Hình : Đồthị
Trang 36gi m d n So sánh k t qu cho th y b lả ầ ế ả ấ ộ ọc Gaussian đem lại hi u qu tệ ả ốt hơn Qua
đó trong luận văn, Gaussian blur đượ ử ục s d ng
3.1.3 L ọc ảnh sau khi làm m ờ
Biến đổi hình thái học là các phương thức cơ bản trên hình d ng c a ảnh Hai ạ ủphép bi n ế đổi cơ bàn là xói mòn và trương nở, hay các bi n th c a nó là hàm ế ể ủOpening, Closing,…
Trang 37Hình 3-8: Tác d ng c a hàm opening [14] ụ ủQua hình trên ta có thể ấ th y nh ng thành ph n nhi u bên ngoài nữ ầ ễ ền đối tượng
b ịloại bỏ Mức độloạ ỏ ẽi b s ph thuụ ộc vào kích thước hạt nhân s d ng ử ụ
Áp dụng vào đề tài, ta được:
Trang 38Có rất nhiều thuật toán để nh phân hóa, có th ị ểlà nhị phân hóa đơn giản b ng ằcách chọn ngưỡng c nh, ho c có th là nh ố đị ặ ể ị phân hóa ngưỡng thích nghi Trong
mô hình này, tôi s d ng thuử ụ ật toán Otsu’s Trong thuật toán ngưỡng c nh, chúng ố đị
ta ph i l a ch n giá tr ả ự ọ ị ngưỡng sao cho t t nhố ất Đó là bài toán khó “thử và lỗi” khi các ảnh đầu vào được chụp trong các điều kiện không đồng nh t Xem xét m t ảnh ấ ộhai c c, nói cách khác là nh mà biự ả ểu đ histogram có hai đỉồ nh Thu t toán Otsu lậ ấy
x p x giá tr trung bình c a hai cấ ỉ ị ủ ực này cho ngưỡng nh ị phân Đối v i các nh ớ ảkhông ph i hai c c, Otsu s không cho kả ự ẽ ết quả chính xác
Trang 3938
Hình 3-10 : Hoạt độ ng c a thu t toán Otsu [14] ủ ậViệc k t h p b lế ợ ộ ọc Gaussian trước đó cho kết qu nh phân tả ị ốt hơn Khi áp
d ng vào bài toán th c t cụ ự ế ủa đề tài, kết quả ốt hơn đượ t c ghi nh n ậ
Hình 3-11 : Áp dụ ng thuật toán Otsu vào đề tài
3.1.5 L ọc ảnh sau khi nh phân ị
Đối ngược v i s dớ ử ụng hàm opening để ọ l c sau khi làm m , sau khi nh phân ờ ịtôi s d ng hàm closing nh m mử ụ ằ ục đích trám đầy các l h ng nh ỗ ổ ỏ bên trong đối tượng Hàm closing là t h p cổ ợ ủa hàm xói mòn và trương nở theo th t th c hi n: ứ ự ự ệtrương nở -> xói mòn
Trang 4039
H ình 3-12: Tác d ng c a hàm closing [14] ụ ủ
Áp d ng vào bài toán cho viụ ệc trám đầy các l h ng nh ỗ ổ ỏ trên đối tượng Nét chữ ẽ không đồng đề s u v màu sề ắc Do đó khi nhị phân s xu t hi n các l h ng ẽ ấ ệ ỗ ổ
nh trên chỏ ữ Đ ều đó làm mất đi đội chính xác K t h p v i phép nghế ợ ớ ịch đảo bit
Đối tượng được chuy n sang màu tr ng nh m mể ắ ằ ục đính phân tách sau đó
Hình 3-13 : Áp dụng hàm closing vào đề tài
Sau khi ti n x lý ề ử ảnh đầu vào, k t qu ế ả thu được là đối tượng ch vi t tay nữ ế ổi
b t trên nậ ền đen vớ ự ối ưu nhất Đểi s t có th ể đưa vào nhận dạng sau đó, việc phân tách các chữ cái riêng r là đi u b t bu c ẽ ề ắ ộ
3.2 Phân tách t ừ ngữ thành các ch cái riêng r ữ ẽ
Việc nh n d ng m t t ng s tr ậ ạ ộ ừ ữ ẽ ở lên vô cùng khó khăn nếu chúng ta đưa vào m ng mạ ột đầu vào là m t d ộ ữ liệu đại di n cho m t t ngệ ộ ừ ữ Để đơn giản hóa cho
vi c nh n dệ ậ ạng, chúng ta đưa đầu vào là t ng ch cái Vi c này gi m b t s ừ ữ ệ ả ớ ố chiều
đầu vào, và h n ch s lưạ ế ố ợng nhãn dùng trong đánh nhãn đầu vào Vi c d y cho ệ ạ
m ng tr nên kh ạ ở ả thi hơn[7]
Sau khi ti n x ề ử lý, ta thu được ảnh nền đen chữ ng Chúng ta có th s trắ ể ử
dụng hàm tìm đường vi n cề ủa thư viện opencv để tìm vi n c a các ch cái riêng ề ủ ữ