Ảnh scan có đường viền màu đen và ảnh sau khi đã bóc viền đen

Một phần của tài liệu Nhận dạng các biểu mẫu tài liệu (Trang 80 - 85)

Nhận xét: Dựa trên kết quả thực nghiệm sau khi áp dụng thuật toán đối với 60 biểu mẫu văn bản thuộc về 4 loại khác nhau, chúng tôi thấy rằng kết quả thu đƣợc hoàn toàn có thể so sánh với kết quả của các thuật toán khác. Thời gian để nhị phân hóa ảnh có độ phân giải là 300 DPI với 10 lần lặp chỉ là 25ms. Điều này chứng minh rằng thuật toán có thể áp dụng rất hiệu quả khi ta cần xử lý văn bản với số lƣợng lớn.

3.3.2 Thuật toán xác định góc nghiêng 3.3.2.1.Thuật toán sử dụng phép chiếu 3.3.2.1.Thuật toán sử dụng phép chiếu

Trong phần nay chúng tôi không đi sâu vào giải thích về phƣơng pháp phép chiếu mà chỉ nêu tóm tắt các bƣớc chính cần thực hiện:

– Các điểm đen trên hình ảnh sẽ đƣợc chiếu theo các đƣờng thẳng song song vào một mảng tích lũy (A). Mỗi phần tử của mảng tƣơng ứng với

83

một đƣờng chiếu và giá trị của nó là số điểm đen nằm trên đƣờng chiếu đó.

– Sử dụng phép chiếu đối với mỗi góc nghiêng giả định, ta thu đƣợc một tập các mảng tích lũy (Aθ). Dựa vào hàm đánh giá F(Aθ) với MINANGLE ≤ θ ≤ MAXANGLE, ta tìm đƣợc góc nghiêng chính xác θ của ảnh là góc làm cho giá trị của hàm đánh giá F(Aθ) đạt cực đại Dựa trên các đặc trƣng của văn bản ta có hai hàm đánh giá :

     n i i A i A A F 1 2 1(  ) ( [ ] [ 1])

Áp dụng phƣơng pháp phép chiếu, ta thử với từng góc θ nằm trong khoảng ( MINANGLE, MAXANGLE). Góc θ tìm đƣợc là góc có hàm đánh giá tƣơng ứng đạt giá trị cực đại.

Tối ƣu thuật toán

Từ thực tế nghiên các loại biểu mẫu khác nhau, chúng tôi nhận thấy các văn bản dạng biểu mẫu có nhiều đƣờng thẳng, nhiều hình chữ nhật song song với hƣớng của văn bản; khi văn bản bị nghiêng với một góc θ, thì các hình này không bị biến dạng nhiều. Cùng với cách làm trên, chi phí tính toán tập trung nhiều vào việc tính tổng số điểm đen trên đƣờng chiếu. Để khắc phục nhƣợc điểm này chúng ta có thể không cần tính đến tất cả các điểm đen trên đƣờng chiếu mà chỉ xét xem đƣờng chiếu đƣờng chiếu thuộc về kiểu nào trong hai loại: đƣờng chiếu có chứa ít nhất một điểm đen (gọi là đƣờng chiếu đen – gọi tắt là đƣờng đen) và đƣờng chiếu không có chứa điểm đen (gọi là đƣờng chiếu trắng – gọi tắt là đƣờng trắng).

Theo cách này, chúng ta sẽ phân tích ảnh ở tất cả các góc nghiêng θ có thể bằng cách vẽ các đƣờng chiếu song song trên ảnh ở các góc nghiêng này, và xác định các đƣờng các đƣờng đen và các đƣờng trắng. Theo đó các đối tƣợng (nhƣ textline, đƣờng thẳng, hình chữ nhật, bảng…) có thể đƣợc xấp xỉ bằng các hình bình

84

hành. Việc ƣớc lƣợng góc nghiêng của ảnh dựa trên diện tích các hình bình hành hoặc phần bù của các hình bình hành đó.

Hình 3.24: (a) Ảnh scan, các đường màu đỏ là các đường chiếu ở góc nghiêng θ. (b) Ảnh được xấp xỉ bởi các hình bình hành

Để tăng cƣờng độ chính xác chúng ta có thể chia nhỏ đƣờng chiếu bằng cách chia ảnh thành các vùng có độ rộng nhƣ nhau. Ta coi mỗi vùng nhƣ là một ảnh con, và việc phân tích ảnh đƣợc áp dụng trên mỗi một ảnh con này.

85

Hình 3.25: (a) Ảnh scan. (b) (c) (d) Ảnh các đường chiếu đen và trắng ở các góc nghiêng -2.50, -3.50, 20

Đặt A(θ) là diện tích các hình bình hành tƣơng ứng với góc nghiêng θ, T là tổng diện tích của toàn bộ ảnh và B(θ) = T - A(θ) là diện tích phần bù của các hình bình hành. Khi đó góc nghiêng của ảnh sẽ đƣợc ƣớc lƣợng bởi giá trị lớn nhất của tất cả các B(θ ) hay θ* = Max{ B(θ)} [12].

Để tính đƣợc kích thƣớc của vùng trắng, đơn giản chúng ta chỉ việc đếm số điểm ảnh trên đƣờng trắng. Với mỗi một đƣờng chiếu ta làm nhƣ sau:

IF nếu là điểm ảnh màu đen THEN

Chúng ta dừng lại, trả lại giá trị 0, và chuyển sang duyệt đƣờng chiếu tiếp theo

ELSE

Tăng số điểm ảnh trắng lên 1, chuyển sang điểm tiếp theo trong đƣờng chiếu

Trong phƣơng pháp này chúng ta phải phân tích ảnh ở nhiều góc khác nhau, và số lƣợng các đƣờng chiếu là lớn, chi phí của thuật toán tập trung vào việc xác

86

định các đƣờng chiếu. Để nâng cao hiệu quả của thuật toán, chúng ta nên tập chung vào việc giảm chi phí tính toán trên các đƣờng chiếu đó.

Nhận thấy các đƣờng chiếu là các đƣờng song song nhau nên hệ số góc của các đƣờng chiếu này là nhƣ nhau, do vậy chúng ta chỉ cần tính một lần hệ số góc cho mỗi một lần phân tích ảnh ở góc nghiêng θ. Để tránh tính toán trên các số thực chúng tôi sử dụng các đƣờng chiếu là các đƣờng thẳng Bresenham. Với mỗi một góc nghiêng θ, chúng ta sẽ tính trƣớc các điểm trên đƣờng thẳng Bresenham. Sau đó, với mỗi đƣờng chiếu ta sẽ sử dụng lại tập điểm đã tính trƣớc.

Tuy nhiên độ chính xác phụ thuộc vào việc ảnh đó đƣợc chia làm bao nhiêu phần. Nếu chia quá nhỏ thì đối với các góc nghiêng gần nhau (chỉ cách nhau 0.2 o

hoặc 0.3 o) sẽ gần nhƣ không có sự sai khác nhau về tổng diện tích vùng trắng. Do vậy, việc xác định góc nghiêng sẽ không chính xác trong trƣờng hợp này. Để khắc phục nhƣợc điểm đó, chúng ta sẽ sử dụng phƣơng pháp này để ƣớc lƣợng nhanh một góc A, sau đó sử dụng phƣơng pháp ở mục 3.2.2, để chính xác hóa góc nghiêng của ảnh.

Tối ƣu các tham số.

Văn bản sau khi qua máy quét thƣờng tạo ra một hình ảnh bị nghiêng với góc nghiêng nằm trong khoảng [-150

, 150]. Ta sẽ tìm góc nghiêng của ảnh trong khoảng này (MINANGLE = -15, MAXANGLE = 15). Đây là một khoảng xác định phù hợp, vì nếu khoảng tìm kiếm quá lớn sẽ làm tăng thời gian xử lý, ngƣợc lại nếu khoảng quá nhỏ thì có nhiều khả năng góc nghiêng sẽ nằm ngoài khoảng. Trong trƣờng hợp góc nghiêng của hình ảnh vƣợt quá khoảng tìm kiếm thì điều đó cũng sẽ đƣợc phát hiện trong bƣớc xử lý tiếp theo (phân vùng ảnh), khi đó ta sẽ thực hiện tìm kiếm lại góc nghiêng với một khoảng tìm kiếm rộng hơn.

Độ chênh lệch trong việc chọn từng góc θ trong khoảng tìm kiếm cũng có ảnh hƣởng quan trọng đối với hiệu năng và độ chính xác. Ví dụ nhƣ nếu mỗi góc θ cách nhau một khoảng 0.1 và khoảng tìm kiếm là ±150

thì cần xét với 300 trƣờng hợp, độ chính xác của góc nghiêng thu đƣợc là ±0.10. Việc tính hàm ƣớc lƣợng đối

87

với tất cả các góc nghiêng có thể nhƣ vậy là không cần thiết, thay vào đó chúng tôi sử dụng khoảng cách 20

để ƣớc lƣợng ở bƣớc đầu tiên. Sau đó dựa vào kết quả thu đƣợc, chúng tôi thu hẹp khoảng tìm kiếm và khoảng cách giữa các góc cần ƣớc lƣợng để đạt đƣợc độ chính xác cao hơn. Thực nghiệm cho thấy trong bƣớc đầu tiên, nếu lấy khoảng cách là 10

hoặc 20 không làm thay đổi độ chính xác của thuật toán.

Để tăng cƣờng hơn nữa hiệu quả tính toán, trong bƣớc đầu tiên khi độ chính xác là nhỏ, do đó không cần phải sử dụng ảnh lớn và chi tiết. Chúng tôi sử dụng ảnh cỡ khoảng 50DPI (thu nhỏ từ ảnh ban đầu) cho bƣớc sử dụng thuật toán 3.2.3, còn trong các bƣớc tiếp theo (thuật toán 3.2.2) thì sử dụng ảnh gốc để đảm bảo độ chính xác.

Một phần của tài liệu Nhận dạng các biểu mẫu tài liệu (Trang 80 - 85)

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

(109 trang)