COMPANY LOGO www.themegallery.com GiỚI THIỆU ĐỀ TÀI - Các bài toán nhận dạng đang được ứng dụng trong thực tế, hiện nay tập trung vào nhận dạng mẫu, nhận dạng tiếng nói và nhận dạng ch
Trang 3COMPANY LOGO
www.themegallery.com
GiỚI THIỆU ĐỀ TÀI
- Các bài toán nhận dạng đang được ứng dụng trong thực tế, hiện nay tập trung vào nhận dạng mẫu, nhận dạng tiếng nói và nhận
dạng chữ…
-Nhận dạng chữ viết tay là bài toán được quan tâm rất nhiều và nhận dạng ký tự không dấu đã đạt được nhiều thành công lớn -Nhận dạng chữ viết tay tiếng Việt vẫn còn là vấn đề thách thức lớn đối với các nhà nghiên cứu
- Bài toàn này chưa thể giải quyết trọn vẹn được vì nó hoàn toàn phụ thuộc vào người viết và sự biến đổi quá đa dạng trong cách viết và trạng thái sức khỏe, tinh thần của từng người viết
Trang 4www.themegallery.com
GiỚI THIỆU ĐỀ TÀI
- Hiện nay có một số đề tài nghiên cứu nhận dạng chữ viết tay
tiếng Việt như mạng Nơron, máy Vector hổ trợ…., tuy nhiên kết quả nhận dạng lại không cao
Đó là lý do em chọn đề tài này với mong muốn nâng cao kết quả nhận dạng đặc biệt là tiếng Việt
Trong đề tài tập trung vào nghiên cứu nhận dạng các ký
tự viết tay tiếng Việt đơn lẽ bằng mô hình Markov ẩn
Trang 7COMPANY LOGO
www.themegallery.com
TIỀN XỬ LÝ VÀ TRÍCH CHỌN ĐẶC TRƯNG
-Thuật toán trung bình cộng :
Ý tưởng của thuật toán như sau: Tính trung bình cộng giá trị của 1pixel, sau đó gán lại giá trị trung bình cộng đó cho RGB
Ví dụ:Quá trình chuyển xám như sau :
Trang 8www.themegallery.com
TIỀN XỬ LÝ VÀ TRÍCH CHỌN ĐẶC TRƯNG
2 Phân ngƣỡng
- Mục đích: Chuyển ảnh đầu vào thành ảnh đen trắng (là ảnh có
các pixel chỉ mang giá trị 0 hoặc 255)
- Thuật toán trung bình cộng:
Sau khi tính được giá trị TBC như phần 1 ta đem so sánh với ngưỡng
Trang 9COMPANY LOGO
www.themegallery.com
TIỀN XỬ LÝ VÀ TRÍCH CHỌN ĐẶC TRƯNG
Ngưỡng là một số nằm trong khoảng từ 0255 Trong
bài này đang đặt ngưỡng là 128
Thuật toán này cụ thể như sau:
Nếu TBC < 0: Gán giá trị R,G,B = 0
Nếu TBC > 255: Gán giá trị R,G,B = 255
Nếu TBC < Ngưỡng: Gán giá trị RGB = 0
Nếu TBC >= Ngưỡng: Gán giá trị RGB=255
Trang 10-Với những ảnh đầu vào là ảnh scan hoặc ảnh chụp từ điện
thoại hoặc máy ảnh, sau khi phân ngưỡng hay có các điểm đen
lốm đốm nằm rải rác trên toàn bộ vùng ảnh
- Các điểm này gọi là nhiễu, mục đích của bộ lọc median là
loại bỏ các điểm nhiễu này
Trang 11COMPANY LOGO
www.themegallery.com
TIỀN XỬ LÝ VÀ TRÍCH CHỌN ĐẶC TRƯNG
Kỹ thuật lọc trung vị
Giả sử ta có ảnh I, điểm ảnh P, cửa sổ w(p) và ngưỡng ᶲ
Khi đó lọc trung vị gồm các bước sau :
Bước 1 : Tính trung vị
Bước 2 : Gán giá trị
) ( )}
( /
) ( { I q q W p Med p
( / )
(
/ ) ( )
( / )
( )
(
p Med p
I Neu p
Med
p Med p
I Neu p
I p
Ikq
Trang 127 2 2 4 1 2
1 4 7 31 4 2
2 1 4 1 0 1
2 2 2 4 1 2
1 4 4 4 4 2
2 1 4 1 0 1
kq
I
Trang 13Ví dụ :1 ảnh đầu vào như sau:
Trước khi phát hiện biên Sau khi phát hiện biên
Trang 14+ Cận phải (Right)
- Vì ảnh sau khi đã qua tiền xử lý là ảnh chỉ bao gồm 2 giá trị :
+ 0: Biểu diễn bởi màu đen + 255: Biểu diễn bởi màu trắng
Trang 15COMPANY LOGO
www.themegallery.com
TIỀN XỬ LÝ VÀ TRÍCH CHỌN ĐẶC TRƯNG
Tìm cận trên (Top)
Ý tưởng: Quét ảnh theo chiều ngang từ trên xuống
dưới Đến khi nào gặp điểm đen đầu tiên thì dừng lại đó là
điểm cận trên
Tìm cận dưới (Bottom)
Ý tưởng: Quét ảnh theo chiều ngang từ dưới lên trên
Đến khi nào gặp điểm đen đầu tiên thì dừng lại đó là điểm
cận dưới
Trang 16www.themegallery.com
TIỀN XỬ LÝ VÀ TRÍCH CHỌN ĐẶC TRƯNG
Tìm cận trái (Left)
Ý tưởng: Quét ảnh theo chiều dọc từ trái sang phải Đến
khi nào gặp điểm đen đầu tiên thì dừng lại đó là điểm cận trái
Tìm cận phải (Right)
Ý tưởng: Quét ảnh theo chiều dọc từ phải sang trái Đến
khi nào gặp điểm đen đầu tiên thì dừng lại đó là điểm cận phải
Sau khi tìm được 4 điểm cận Ta cắt ảnh theo 4 tọa độ vừa tìm được thì sẽ thu được vùng chỉ chứa ký tự
Trang 17Cách tính góc nghiêng như sau:
- Xoay ảnh trong 1 khoảng từ góc a1a2
- Bước nhảy là 1 góc b
- Ảnh đầu vào từ vị trí 1 xoay đến vị trí 4 và mỗi bước xoay 1
góc là b, sau mỗi lần xoay tính toán lại trọng số của ảnh
- Tính max của các trọng số
- Ở bước xoay nào trọng số đạt giá trị max thì đó là góc xoay
cần tính của ảnh
Trang 18www.themegallery.com
TIỀN XỬ LÝ VÀ TRÍCH CHỌN ĐẶC TRƯNG
6 Trích chọn đặc trƣng
•Mục đích: Trích ra các đặc trƣng của ảnh để quá trình nhận dạng chính xác
- Đồng nhất các ảnh về cùng
kích thước (20*30)
- Chia ảnh thành các vùng mang những
đặc trưng của ảnh đó, ta chia chiều dọc
thành 3 đoạn chiều ngang thành 3 đoạn :
- Sau khi chia ký tự thành các đoạn ta tính lại pixel ảnh
Mỗi vùng sẽ mang các vector đặc trưng riêng
Trang 20
www.themegallery.com
TIỀN XỬ LÝ VÀ TRÍCH CHỌN ĐẶC TRƯNG
•Ví dụ kết quả của ảnh sau khi lượng tử
Ví dụ :Kết quả của ảnh sau khi lượng tử :
Trang 21xác định các tham số ẩn từ các tham số quan sát được dựa trên
sự thừa nhận này Các tham số của mô hình được rút ra sau đó
có thể sử dụng được để thực hiện các phân tích kế tiếp
Trang 22www.themegallery.com
MÔ HÌNH MARKOV Ẩn
•Ví dụ kết quả của ảnh sau khi lượng tử
Ứng dụng của mô hình Markov ẩn :
Trang 24- qt là trạng thái đặt đến được thời điểm t
- aij là xác suất chuyển từ trạng thái Si sang trạng thái Sj :
Aij = P[qt+1 = j|qt = i],
- S là trạng thái của hệ thống ở thời điểm t
Trang 25Hỏi : Xắc suất để thời tiết 4 ngày liên tiếp : Nắng, mưa, mây, nắng ?
Trả lời : Dãy quan sát o là (nắng , mưa, mây , nắng)
2 0 06
2 0
3 0 3 0 04
A
0.2
0.1 0.2
Trang 26aij= P(qt+1 =j|qt =i),aij 0, 1 i,j N B=[bij] xác suất nhả ký hiệu
b = P(o =k|q=i),b 0, 1 i N&1 k M xác suất khởi trạng
A=[aij] xác suất chuyển trạng thái
i P(q1 i)
Trang 27-N trạng thái, M tín hiệu quan sát
-Khả năng chọn bình là xác suất chuyển trạng thái
- Khả năng chọn quả cầu là xác suất của tín hiệu quan sát
Trang 28www.themegallery.com
MÔ HÌNH MARKOV ẨN
Ba bài toán mô hình Markov ẩn
Bài toán 1: cho trước chuỗi tín hiệu quan sát O = O1 O2 … OT
và mô hình HMM đại diện bởi bộ tham số λ = (A, B, π) Làm sao để tính toán một cách hiệu quả p(O|λ) – xác suất phát sinh O
từ mô hình λ?
Bài toán 2: cho trước chuỗi tín hiệu quan sát O = O1 O2 … OT
và mô hình HMM đại diện bởi bộ tham số λ = (A, B, π) Cần tìm ra chuỗi trạng thái tối ưu nhất Q = q1 q2 … qT đã phát sinh
ra O?
Trang 29COMPANY LOGO
www.themegallery.com
MÔ HÌNH MARKOV ẨN
Bài toán 3: cho trước chuỗi tín hiệu quan sát O = O1, O2 … OT
Làm thế nào để xác định các tham số mô hình λ = (A, B, π) sao
cho cực đại hóa xác suất p(O|λ)?
Bộ tham số λ có thể được chọn sao cho xác suất p(O|λ) đạt cực
đại cục bộ bằng thuật toán Baum-Welch:
- Trước tiên, ta định nghĩa ξt(i,j) là xác suất ở trạng thái Si tại thời điểm t và rơi vào trạng thái Sj ở thời điểm t+1 cho trước mô hình λ và chuỗi tín hiệu quan sát O:
ξt (i, j) =p(qt= Si , qt +1 = S j | O, λ)
Trang 30www.themegallery.com
MÔ HÌNH MARKOV ẨN
Theo định nghĩa này, ξt(i,j) có thể được tính thông qua các biến
forward α t(i) và backward βt(i) như sau:
Mặc khác, ta đã có γt(i) là xác suất ở trạng thái Si vào thời điểm t cho trước chuỗi tín hiệu quan sát O và mô hình λ Lấy tổng ξt(i,j) trên j, ta được tương quan giữa γt(i) và ξt(i,j) như sau:
Trang 31COMPANY LOGO
www.themegallery.com
MÔ HÌNH MARKOV ẨN
Nếu ta lấy tổng γt(i) theo t ∈ [1, T-1], kết quả nhận được
là số lần kỳ vọng chuyển trạng thái từ Si Tương tự, lấy tổng
ξt(i,j) theo t ∈ [1, T-1], ta sẽ có số lần kỳ vọng chuyển từ trạng
thái Si sang Sj:
Với các đại lượng này, ta có các biểu thức cập nhật tham
số của HMM như sau:
Trang 32
www.themegallery.com
MÔ HÌNH MARKOV ẨN
) , , ( A B
Trang 33COMPANY LOGO
www.themegallery.com ỨNG DỤNG MÔ HÌNH MARKOV ẨN NHẬN
Nhận dạng: Cũng tương tự như phần huấn luyện Ảnh scan sẽ được lấy đặc trưng Dãy vector đặc trưng lần lượt sẽ đưa vào các
mô hình Markov ẩn đã được huấn luyện Mô hình nào gần nhất với mô hình huấn luyện thì sẽ được chọn
Trang 34www.themegallery.com
CHƯƠNG TRÌNH DEMO
- Cấu hình cài đặt : CPU pentium4, RAM 2G
- Ngôn ngữ lập trình : Ngôn ngữ C# , mã nguồn mở
- Giao diện chính chương trình :
Trang 35COMPANY LOGO
www.themegallery.com
KẾT LUẬN
Đề tài đã ứng dụng mô hình Markov ẩn vào nhận dạng chữ
viết tay cho thấy kết quả nhận dạng tương đối tốt
Hướng phát triển tiếp theo
- Nhận dạng đoạn văn bản viết tay…
- Phát triển để chương trình có thể tích hợp với các trương trình quản lý sinh viên, học sinh Phát triển thêm về mặt dữ liệu để
trương trình có thể hoạt động tốt với dữ liệu của các chương trình quản lý
- Cải tiến một số thuật toán tiền xử lý để chương trình có tốc độ tốt hơn
- Phát triển giao diện thân thiện hơn với người sử dụng
Trang 36LOGO
EM XIN CẢM ƠN THẦY CÔ VÀ CÁC BẠN ĐÃ
LẮNG NGHE !