Cấu trúc dữ liệu sử dụng trong quá trình nhận dạng

Một phần của tài liệu Nhận dạng chữ viết tay hạn chế dựa trên mô hình mạng nơron kết hợp với thống kê ngữ cảnh (Trang 48)

Với phư ơ ng pháp nhận dạng đã đề xuất ở phần trên, cấu trúc d ữ liệu thích hợp để lưu các kết quả nhận dạng là cấu trúc cây đa phân. T ro n g đó, mỗi nút lưu thô ng tin về kết quả nhận dạng được từ m ột vị trí cắt đến các vị trí cắt có thể có ngay sau đó bao gồm: Kí tự nhận dạng được và danh sách các nút con, các kí tự lưu ở nút con là các kí tự có thể nhận dạng được từ phần ảnh còn lại. c ấ u trúc dữ liệu của m ột nút được m ô tả như sau

struct CNode {

CNode *Parent;

char c h [2];

CTypedPtrList <CNode*, CPtrList> Listchild;

T rong đó: P arent là con trỏ đến nút cha, L i s t C h i l d là danh sách các nút con, c h là m ột m ảng gồm hai phần tử dù ng để lưu các kí tự nhận dạn g đượ c từ m ột ảnh đầu vào. M ản g ch được sử dụng với mực đích giải quyết trư ờng hợp nhập nhằng kí tự (một kí tự v ừ a giống kí tự a v ừ a giống kí tự b) n h ư đã đề cập ở p h ầ n 2.1.2. T hông thường, ta chỉ sử dụng đến ph ần tử đầu tiên của m ản g (ch[0] ), trong trư ờ n g hợp có nhập nh ằng thì cả hai kí tự sẽ được chọn và thay vì phải tạo th ê m nh án h m ới cho cây, ta sẽ lưu chúng vào m ảng ch. Sau khi tất cả các cách p h â n đoạn từ đã đượ c xét, ta sẽ tiến hành ghép lại các kí tự để tạo thành từ. C ác kí tự được ghép theo từng nhánh của cây: N ú t cha sẽ ghép nối với nút con trực tiếp của m ình, n ế u n út cha có n

con thì sẽ có n nhánh tương ứng và sẽ ghép thành n từ. T ron g trư ờ n g hợp m ộ t nút trèn cây có hai kí tự thì chúng sẽ được xem n h ư hai nhánh của nút đó.

Nguyễn Thị Thanh Tân Trang - 48 - Luận vãn thạc sĩ

Ví dụ trên Mình 2.5 sẽ thê hiện m ột cách cụ thể hơn quá trình lưu kết quả nhận dạng vào cây.

Hình a l , ảnh đầu vào được cắt lần thứ nhất tại hai vị trí. Với vị trí cắt thứ nhất, nhận dạng được kí tự T , với vị trí cat thứ hai nhận dạng được chữ r. Hình a2, thể hiện cây kết quả tư ơ n g ứng.

a2) Cây kết quà tương ứng a l ) Lần cắt đầu tiên

H ình b l , ph ần ảnh còn lại sau lần cắt thứ nhất tại vị trí 1 (vị trí cắt tươ n g ứng với chữ T ) , sẽ đ ư ợ c cắt tại ba vị trí với ba kí tự nhận dạng được tươ ng ứ n g là T , ‘u ’ và ‘w \ H ình b2, thể cây kết quả tươ ng ứng

b l) Lần cắt thứ hai

H ìn h c, thể hiện hình ảnh cụ thể của cây lưu trữ ở trong

b2) Cây kết quả tương ứng

bộ nhớ

Nguvễn Thị Thanh Tân Trang - 49 - Luận văn thạc sĩ

Nul l

c) Hình ảnh cụ thể của cây lưu trữ ở trong bộ nhớ

Hình 2.5: Quá trình lưu trữ các kết quả nhận dạng

Ở thời điểm ban đầu, nút gốc (root) của cây được khởi tạo với các giá trị:

(P arent = N U L L , ch - (Ị) (kí tự rỗng), ListC hild = N U L L ).

Sau lần cắt th ứ nhất, cây được m ờ rộng với hai nút (được gọi tên là n o d e l

node2), với các giá trị lần lượt là:

( n o d e l - ^ P a r e n t = root, n o d e l- > c h = i, n o d e l-> L is tC h ild = N Ư L L )

( n o d e 2 - ^ - P a r e n t = r o o t , n o d e l - > c h = r, n o d e l —» L i s t C h i l d = N U L L )

Lúc này: ro o t-» L istC h ild = ( n o d e l , node2).

Khi thực hiện đệ qui với phần ảnh còn lại sau lần cắt thứ nhất tại vị trí 1, đỉnh n o d e l của cây sẽ đ ư ợ c m ở rộng với ba nút (n o d e l 1, n o d e l2n o d e ]3), với các giá trị:

(n od e 11 -> P aren t = node 1, node 11 —»ch = i, nod e 11 -» L istC h ild = N Ư L L )

( n o d e l2 - > P a r e n t = n o d e l , n o d e l 2 - > c h = u, n o d e l l-> L is tC h ild = N Ư L L )

(n ode 11 -^ P a r e n t = node 1, node 11 - » c h = w, no de 11 -> L istC h ild = N U L L )

K h i đó: n o d e l- ^ L is t C h ild = (n o d e l 1, n o d e l 2 , n o d e l3 )

Nguyễn Thị Thanh Tân Trang - 50 - Luận văn thạc sĩ

Một phần của tài liệu Nhận dạng chữ viết tay hạn chế dựa trên mô hình mạng nơron kết hợp với thống kê ngữ cảnh (Trang 48)

Tải bản đầy đủ (PDF)

(103 trang)