HIỆU CHỈNH GÓC LỆCH

Một phần của tài liệu Hiệu chỉnh mẫu và nhận dạng trong nhập điểm tự động (Trang 27)

2.1.1. Phƣơng pháp chiếu nghiêng

Phƣơng pháp chiếu nghiêng rất phổ biến cho việc xác định góc lệch của trang văn bản. Một hình chiếu nghiêng là một biểu đồ tần suất của số các giá trị điểm đen tích luỹ lại ứng với các dòng mẫu trên toàn bộ trang (Hình 2.3). Phép chiếu nghiêng có thể lấy theo góc bất kỳ, nhƣng thƣờng thì nó đƣợc thực hiện theo hƣớng nằm ngang dọc theo các dòng hoặc theo hƣớng thẳng đứng vuông góc với các dòng; những độ nghiêng đƣợc gọi là các hình chiếu nghiêng theo các hƣớng nằm ngang hoặc thẳng đứng. Với một tài liệu mà các dòng văn bản của nó nằm ngang thì hình chiếu nghiêng theo hƣớng nằm ngang sẽ có đỉnh với độ rộng bằng chiều cao ký tự và các vùng trũng có độ rộng bằng khoảng cách giữa các dòng. Với các tài liệu gồm nhiều cột, phƣơng pháp chiếu nghiêng theo phƣơng thẳng đứng sẽ thu đƣợc số khối tƣơng ứng với số cột, các khối đƣợc phân chia bởi các vùng trũng tạo bởi các khoảng chống giữa các cột và lề giấy.

Một cách sử dụng trực tiếp nhất đối với phƣơng pháp chiếu nghiêng trong việc xác định góc nghiêng là tính toán độ lệch của góc gần với hƣớng mong muốn (Postl 1986). Với mỗi góc nghiêng, ngƣời ta đo chiều cao các hộp theo mặt nghiêng và hộp nào có chiều cao lớn nhất sẽ cho ta góc lệch cần tìm. Tại góc lệch chuẩn, vì các dòng quét đã đƣợc đã đƣợc sắp thẳng hàng theo các dòng văn bản, nên mặt cắt nghiêng sẽ có các đỉnh lồi với độ cao lớn nhất và các vùng trũng ứng với khoảng chống giữa các dòng văn bản. Đối với kỹ thuật chung này ngƣời ta có thể cải tiến và điều chỉnh để lặp lại một cách nhanh hơn đối với việc chuẩn hóa góc nghiêng và xác định góc nghiêng chính xác hơn.

Baird (1987) đã cải tiến phƣơng pháp mặt cắt nghiêng này để nâng cao tốc độ và độ chính xác trong xác định độ lệch. Trƣớc hết, các phần kết nối đƣợc “xác định” và trung điểm cạnh dƣới cũng đƣợc thể hiện. Ngƣời ta xác định tổng các độ lệch (nhƣ sự chênh lệch về chiều cao giữa các điểm lồi và lõm) đối với các góc nghiêng khác nhau.

Giá trị thu đƣợc đối với mỗi góc sẽ đƣợc đo bởi số các điểm thuộc dòng cơ sở nằm trên đƣờng chiếu theo góc ấy. Chiều cao của các cột càng lớn thì góc nghiêng càng tiến tới 0o. Giá trị đo đƣợc lớn nhất sẽ cho góc lệch thực sự. Độ chính xác của phƣơng pháp này thƣờng đạt trong phạm vi 0.5o so với hƣớng chuẩn. Do việc xác định đƣợc tiến hành bằng cách sử dụng các trung điểm cạnh đáy của mỗi hộp nên có một giả định rằng trang giấy đƣợc đặt gần vuông góc khi quét. Và một phần do giả thiết này nên phƣơng pháp sẽ chỉ đạt độ chính xác cao nhất trong phạm vi góc lệch là dƣới 10o

.

2.1.2. Phƣơng pháp biến đổi Hough

Phép biến đổi Hough ánh xạ mỗi điểm trong mặt phẳng (x,y) lên mặt phẳng Hough với bộ tham số (r,), ở đây các đƣờng thẳng có thể đi qua (x,y) với góc nghiêng  và cách gốc toạ đô một khoảng r. Thời gian thực hiện phép biến đổi Hough cho từng điểm riêng biệt là rất lớn, nhƣng có nhiều phƣơng pháp tăng tốc độ cho phép biến đổi này, chẳng hạn có thể sử dụng độ dốc của đoạn thẳng. Đối với các trang tài liệu, cách tăng tốc độ là tính các ảnh “ngắt đoạn” (burst image) để giảm số phép biến đổi điểm sang không gian Hough. Những đoạn ngắt ngang và dọc là tập các điểm liên tiếp nằm trên cùng một hàng hoặc một cột. Các ảnh đoạn này đƣợc mã hóa bởi số điểm trên một ngắt đoạn (độ dài đoạn ngắt). Do vậy độ dài của các ngắt đoạn có giá trị gần với các cạnh phải và đáy của các ký tự (đối với các trang tài liệu có các góc nghiêng nhỏ), do đó tổng số điểm cần biến đổi sang không gian Hough giảm xuống đáng kể. Ở đây mỗi giá trị “burst” đƣợc lƣu trữ trong các “hộp” (bin) tại mọi giá trị (r,) tham số hóa các đƣờng thẳng qua vị trí (x,y) trong ảnh ngắt đoạn đƣợc lƣu trữ trong các hộp trong không gian Hough, đỉnh hộp 

cho góc mà tại đó có nhiều đƣờng thẳng đi qua các điểm ban đầu nhất, đây là góc nghiêng. Đối với phƣơng pháp này có hạn chế là góc nghiêng của văn bản

nhỏ hơn 15o. Ngoài ra, nếu văn bản có cấu trúc rời rạc, thì khó có thể chọn đƣợc đúng các đỉnh trong không gian Hough. Trong trƣờng hợp này mặc dù có cải tiến dùng các ảnh ngắt đoạn nhƣng phép biến đổi Hough thƣờng là chậm hơn các phƣơng pháp chiếu nghiêng đƣợc mô tả ở trên, nhƣng bù lại là độ chính xác của góc lệch đƣợc phát hiện ra cao hơn.

2.1.3. Phƣơng pháp ngƣời láng giềng gần nhất

Tất cả các phƣơng pháp trên đều có hạn chế về góc nghiêng tối đa của trang tài liệu. Một cách tiếp cận khác không bị hạn chế này là: Sử dụng tập hợp các láng giềng gần nhất. Khi đó láng giềng gần nhất mỗi phần đƣợc xác định (đó là bộ phận gần nhất theo khoảng cách Euclid) và giữa các tâm của các phần láng giềng gần nhất đƣợc tính. Do khoảng trống trong các ký tự nhỏ hơn khoảng trống giữa các từ và giữa các ký tự của từ trong cùng một dòng văn bản, những láng giềng gần nhất này sẽ là các láng giềng trội hơn của các ký tự kế tiếp trên cùng một dòng văn bản. Mọi véc tơ định hƣớng cho các đƣờng nối láng giềng gần nhất đƣợc lƣu trong một biểu đồ và đỉnh của biểu đồ chỉ ra hƣớng chiếm ƣu thế - đó là góc nghiêng. Để xác định đƣợc bất kỳ góc nghiêng nào, phƣơng pháp này phải chi phí cho những tính toán trên máy tính nhiều hơn hầu hết các phƣơng pháp khác. Độ chính xác của phƣơng pháp phụ thuộc số thành phần; tuy nhiên, do với mỗi phần chỉ có một đƣờng nối với láng giềng gần nhất đƣợc tạo nên, những phần có nhiễu, ví dụ phần dƣới ký tự, dấu chấm trên chữ “i” và các đƣờng giữa văn bản có thể giảm độ chính xác của những trang tƣơng đối thƣa.

Hình 2.4. Biểu đồ minh hoạ phƣơng pháp ngƣời láng giềng gần nhất Trong hình trên ta có (a) là văn bản gốc, (b) là tâm của các ký tự trong (a), (c) là các đoạn thẳng nối các láng giềng gần nhất, (d) là biểu đồ tần suất xuất hiện các đoạn thẳng có cùng góc nghiêng. Trong đồ thị có đỉnh tại 0, do đó góc lệch của văn bản bằng 0, đỉnh của biểu đồ này chỉ đƣợc dùng để làm ƣớc lƣợng ban tiên nghiệm cho góc nghiêng của trang văn bản. Sự xấp xỉ này đƣợc dùng để loại những đƣờng nối có hƣớng vƣợt ra ngoài dãy các hƣớng gần với hƣớng xấp xỉ, vì chúng có thể là những đƣờng nối giữa các kí tự của các dòng văn bản khác nhau. Sau đó tiến hành hiệu chỉnh tâm các phần lại đƣợc nhóm lại bằng các đƣờng nối láng giềng gần nhất và đƣợc thực hiện bằng phƣơng pháp bình phƣơng tối thiểu. Giả sử phép điều chỉnh bình phƣơng tối thiểu đƣợc dùng cho toàn bộ dòng văn bản và phép đo đã đƣợc cải tiến là xấp xỉ chính xác hơn đối với góc nghiêng.

CHƢƠNG 3. MẠNG NƠRON VÀ NHẬN DẠNG BIỂU MẪU

3.1. MẠNG NƠRON NHÂN TẠO

Có nhiều phƣơng pháp đề nhận dạng chữ viết tay. Trong đề tài này, tôi sử dụng mạng nơron để thực hiện việc nhận biết chữ viết tay. Việc sử dụng mạng nơron có nhiều tiện dụng và hiệu quả hơn các phƣơng pháp khác. Khi sử dụng phƣơng pháp này chúng ta không phải lƣu trữ lƣợng mẫu nhiều, và cũng có thể nhận dạng đƣợc những mẫu mà chƣa có trong cơ sở dữ liệu.

Vấn đề quan trọng là xây dựng mạng nơron sao cho có hiệu quả cao nhất trong việc nhận dạng và huấn luyện. Điều này tùy thuộc vào việc lựa chọn kiến trúc của mạng, phƣơng pháp huấn luyện, các tham số đầu vào của mạng, các hàm kích thích trên từng lớp…

Mạng nơron nhân tạo (Artificial Neural Network gọi tắt là ANN) bao gồm: các nút (đơn vị xử lý, nơron) đƣợc nối với nhau bởi các liên kết nơron. Mỗi liên kết kèm theo một trọng số nào đó, đặc trƣng cho tính kích hoạt hay ức chế giữa các nơron. Có thể xem các trọng số là phƣơng tiện để lƣu giữ thông tin dài hạn trong mạng nơron và nhiệm vụ của quá trình huấn luyện (học) mạng là cập nhật các trọng số khi có thêm các thông tin về các mẫu học, hay nói một cách khác, các trọng số đƣợc điều chỉnh sao cho dữ liệu đầu vào mà nó mô phỏng hoàn toàn phù hợp với môi trƣờng đang xét.

Là một hệ thồng bao gồm nhiều phần tử xử lý đơn giản (nơron) hoạt động song song. Tính năng của hệ thống, tuỳ thuộc vào cấu trúc của hệ các trọng số liên kết nơron và quá trình tính toán tại các nơron đơn lẻ. Mạng nơron có thể học từ dữ liệu mẫu và tổng quát hóa dựa trên các dữ liệu mẫu học. Trong mạng nơron, các nơron đón nhận tín hiệu vào gọi là nơron vào (Input) và các nơron đƣa ra thông tin gọi là nơron ra (Output).

3.1.1. Mô hình toán học

Hình 3.1: Mô hình toán học mạng nơron

Giống nhƣ các nơron sinh học, nơron nhân tạo cũng có nhiều đầu vào. Hình 2.2 cho thấy một nơron có R đầu vào. Các đầu vào p1, p2, …, pR đƣợc lần lƣợt nhân với các trọng số w11, w12, …, w1R (tức là lấy tích vô hƣớng) của ma trận trọng số W. Tổng các thông tin vào có trọng số là:

Net = Σ wj pj + θ

Ngƣời ta gọi đây là thành phần tuyến tính của nơron. Hàm kích hoạt f (còn gọi là hàm truyền) đóng vai trò biến đổi từ Net sang tín hiệu đầu ra:

a = f(Net) = f(Wp + θ)

Đây là thành phần phi tuyến của nơron. Có ba dạng hàm kích hoạt thƣờng đƣợc dùng trong thực tế [2, 3, 5, 6]: Hàm dạng bƣớc: step(x) =    0 1  f : p1 p2 p3 : pR w11 w1R θ Net a

Đầu vào Đầu ra: a = f(Wp + θ)

nếu x

Hàm dấu: sign(x) =    1 - 1 Hàm sigmoid: Sigmoid(x) = ( ) 1 1      x e

Ở đây, ngƣỡng θ - làm tăng tính thích nghi và khả năng tính toán của mạng nơron. Sử dụng ký pháp vectơ, P = (p1, …..,pn) vectơ tín hiệu vào W=(w1,….,wn) vectơ trọng số, ta có a = f(Net) với Net = PW.

Trƣờng hợp xét ngƣỡng θ, ta dùng biểu diễn vectơ mới P‟=(p1, …..,pn,θ), W‟=(w1,….,wn,1).

3.1.2. Phân loại

a. Theo kiến trúc mạng:

+ Mạng nơron truyền thẳng (Feed-Forward Neural Network).

Trong mạng nơron truyền thẳng, các liên kết nơron đi theo một hƣớng nhất định, không tạo thành đồ thị có chu trình (Directed Acyclic Graph) với các đỉnh là các nơron, các cung là các liên kết giữa chúng (Hình 3.2b).

+ Mạng hồi quy (Recurrent Neural Network).

Ngƣợc lại các mạng quy hồi cho phép các liên kết nơron tạo thành chu trình. Vì các thông tin ra của các nơron lại đƣợc truyền lại cho các nơron đã góp phần kích hoạt chúng. Nên mạng hồi quy có khả năng lƣu giữ trạng thái trong của nó dƣới dạng các ngƣỡng kích hoạt ngoài các trọng số liên kết nơron.

b. Theo số lớp:

Các nơron có thể tổ chức thành các lớp sao cho mỗi nơron của lớp này chỉ đƣợc nối với các nơron lớp tiếp theo, không cho phép các liên kết giữa các nơron trong cùng một lớp, hoặc từ lớp dƣới lên lớp trên.

nếu x

a) Mạng nơron nhiều lớp b) Mạng nơron truyền thẳng

Hình 3.2: Mô hình dữ liệu tổng quát

c. Theo phương pháp học

Có ba hƣớng chính là học có giám sát (supervised learning), tự học hay học

không giám sát (unsupervised learning) và học tăng cƣờng. Trong khuôn khổ luận văn này, ta chỉ xem xét phƣơng pháp học có giám sát cùng với một đại diện tiêu biểu của phƣơng pháp này là thuật toán lan truyền ngƣợc sai số.

Một thành phần không thể thiếu của phƣơng pháp này là sự có mặt của một ngƣời thầy (giá trị đầu ra mong muốn t) nhƣ ta thấy ở hình 3.3. Ngƣời thầy này có kiến thức về môi trƣờng thể hiện qua một tập hợp các cặp đầu vào - đầu ra Pi – Y đã đƣợc biết trƣớc. Hệ thống học (ở đây là mạng nơron) sẽ phải tìm cách thay đổi các tham số bên trong của mình (các trọng số W và các

...

Hình 3.3. Mô hình thuật toán học có giám sát

Wj ∑ f Y Pj (j=1,...,R) ... Learning Rule e=t-y z t e b

ngƣỡng b) để tạo nên một ánh xạ có khả năng ánh xạ các đầu vào thành các đầu ra mong muốn. Sự thay đổi này đƣợc tiến hành nhờ việc so sánh giữa đầu ra thực sự Y và đầu ra mong muốn t (qua hàm lỗi e). Đối với các mẫu chƣa học, hệ thống sẽ cho đầu ra gần nhƣ đầu ra mong muốn nếu số lƣợng mẫu đã học đủ lớn và đại diện đƣợc phần lớn các dạng mẫu có trong môi trƣờng.

Trong các loại hình mạng nơron học theo phƣơng pháp có giám sát, nổi tiếng nhất là mạng nơron nhiều tầng truyền thẳng học theo phƣơng pháp lan truyền ngƣợc sai số (Back Propagation). Phần sau sẽ trình bày cấu trúc của loại mạng này cùng với thuật giải học của nó.

3.1.3. Các đặc trƣng của mạng nơron nhân tạo

a. Cách nhìn nhận.

Nhƣ một công cụ tính toán: Giả sử mạng nơron NN có m lớp vào và n lớp ra, khi đó với mỗi vectơ các tín hiệu vào X=(x1,….,xm), sau quá trình tính toán tại các nút ẩn, ta nhận đƣợc kết quả ra Y=(y1,…..,yn). Theo nghĩa nào đó mạng nơron làm việc với tu cách một bảng tra, mà không cần biết dạng phụ thuộc hàm tƣờng minh giữa X và Y. Khi đó ta viết: Y= Tinh(X, NN) trong đó hàm Tinh() là hàm ánh xạ bất kỳ nhằm ánh xạ Tập đầu vào X qua mạng NN thành Tập đầu ra Y tƣơng ứng.

Cần lƣu ý thêm rằng các nơron trên cùng một lớp có thể tính toán đồng thời, do vậy độ phức tạp tính toán nói chung sẽ phụ thuộc vào số lớp mạng. Các thông số cấu trúc mạng nơron bao gồm:

- Số tín hiệu vào, số tín hiệu ra. - Số lớp nơron.

- Số nơron trên mỗi lớp.

- Các trọng số liên kết nơron. - Tốc độ học

- Ngƣỡng sai số của mạng

Trọng số của mạng (Weight) đặc trƣng cho tính kích hoạt hay ức chế giữa các nơron trong mạng.

Nhƣ một hệ thống thích nghi, có khả năng học (huấn luyện) để tinh chỉnh các trọng số liên kết cũng nhƣ cấu trúc của mình sao cho phù hợp với các mẫu học (Samples). Ngƣời ta phân biệt ba loại kỹ thuật học:

- Học có giám sát (Supervised learning) hay còn gọi là học có thầy. - Học không có giám sát (Unsupervised learning) hay còn gọi là học không có thầy. Các mạng này đƣợc gọi là các mạng tự tổ chức

- Học tăng cƣờng.

Các kỹ thuật học trong mạng nơron có thể nhằm vào hiệu chỉnh các trọng số liên kết (gọi là học tham số) hoặc điều chỉnh, sửa đổi cấu trúc của mạng bao gồm số lớp, số nơron, kiểu và trọng số các liên kết (gọi là học có cấu trúc). Cả hai mục đích học có thể thực hiện đồng thời hoặc tách biệt.

 Học tham số: Giả sử có k nơron trong mạng và mỗi nơron có đúng một liên kết vào với các nơron khác. Khi đó, ma trận trọng số liên kết W sẽ có kích thƣớc k x 1. Các thủ tục học tham số nhằm mục đích tìm kiếm ma trận W sao cho Ys = Tính(Xs, W) đối với mẫu học S =(Xs, Ys) trong đó Xs là tập dữ liệu đầu vào, Ys là tập đầu ra tƣơng ứng.

 Học cấu trúc: Với học tham số ta giả định rằng mạng có một cấu trúc cố định. Việc học cấu trúc của mạng truyền thẳng gắn với yêu cầu tìm ra số lớp của mạng L và số nơron trên mỗi lớp ni. Tuy nhiên, với các

mạng hồi quy còn phải xác định thêm các tham số ngƣỡng θ của các nơron trong mạng. Một cách tổng quát phải xác định bộ tham số P = (L,n1,…n1,θ,..θk). Ở đây k = Σ ni sao cho Ys = Tính(Xs, P) đối với mọi mẫu học S = (Xs, Ys).

Thực chất, việc điều chỉnh các vectơ tham số W đƣợc quy về bài toán tìm kiếm tối ƣu trong không gian tham số. Do vậy, có thể áp dụng các cơ chế tìm kiếm kinh điển theo Gradient, các giải thuật di truyền, lập trình tiến hóa,..

b. Khả năng tính toán và biểu diễn phụ thuộc dữ liệu.

Mạng nơron truyền thẳng, chỉ đơn thuần tính toán các tín hiệu ra dựa trên các tín hiệu vào và các trọng số liên kết nơron đã xác định sẵn ở trong

Một phần của tài liệu Hiệu chỉnh mẫu và nhận dạng trong nhập điểm tự động (Trang 27)