Nhận dạng chữ Việt với Tesseract OCR

Thứ hai - 28/12/2009 03:38
Trước đây, chúng ta hầu như chỉ biết đến phần mềm VnDOCR như một phần mềm nhận dạng chữ Việt duy nhất. Tuy nhiên VnDOCR có tiền bản quyền khá cao. Nay mangvn.org xin giới thiệu tới các bạn giải pháp nhận dạng chữ Việt bằng phần mềm Tesseract OCR và VietORC. Đây là phần mềm mã nguồn mở hoàn toàn miễn phí có thể nhận dạng nhiều loại ngôn ngữ bao gồm cả chữ Việt. Đặc biệt bạn có thể tự huấn luyện để phần mềm nhận dạng chính xác các font chữ lạ.

Sau khi cài đặtTesseract, tải và giải nén Vietnamese language data pack cho Tesseract vào tesseract installation folder; các files vie. sẽ được đặt vào tessdatasubdirectory. Tesseract hiện tại chỉ có thể nhận dạng hình uncompressed TIFF. Để thực thi nhận dạng chữ OCR trên ảnh với Tesseract:

tesseract vietsample.tif output –l vie

Bộ Vietnamese language data được tạo cụ thể cho các font Times New Roman, Arial, Verdana, và Courier New. Do đó, việc nhận dạng sẽ có kết quả cao hơn cho các ảnh có font glyphs tương tự. OCR ảnh có font glyphs trông khác các font hỗ trợ thường thường sẽ đòi hỏitập huấn Tesseract để tạo một bộ language data khác cụ thể cho những mặt chữ đó.

 Cập nhật: Thêm language data đã được tạo cho các kiểu font cũ Việt Nam, VNI and TCVN3 (ABC).

 Có vài chương trình GUI frontend miễn phí cho Tesseract OCR engine: VietOCR, một ứng dụng open-source Java/.NET, cung cấp hỗ trợ quét văn bản và nhận dạng cho các dạng ảnh PDF, TIFF, JPEG, GIF, PNG, và BMP; và FreeOCR là một chương trình .NET, thăng tiến Tesseract thêm ở phần quét vào văn bản và hỗ trợ nhận dạng compressed TIFF images.

  Qua Microsoft Office Document Image Writer hay virtual printer driver khác, các ứng dụng Windows có thể in ra TIFF hay các dạng ảnh khác, mà ta có thể thực hành OCR với VietOCR hay FreeOCR. Trong những trường hợp ảnh tạo ra bởi virtual printer không đủ phẩm chất cho OCR, ta có thể dùng các công cụ chỉnh ảnh tiêu chuẩn, như GIMP hay ImageMagick, để tạo ra ảnh đạt yêu cầu của OCR engine. Một số công cụ ảnh này thậm chí còn có thể nhận vào PDF files và xuất ra các dạng ảnh thích hợp cho OCR.

 Hình TIFF muốn được OCR cần quét ở độ phân giải từ 200 DPI (dot per inch) trở lên tới 400. Quét ảnh với độ phân giải cao hơn nữa chưa hẳn sẽ tăng sự chính xác của kết quả nhận dạng. Hiện tại, mức chính xác có thể lên trên 97% cho Tiếng Việt (ảnh thí nghiệm), và phiên bản tới của Tesseract có thể nâng cao độ nhận dạng hơn nữa. Dầu vậy, độ chính xác thực thụ vẫn còn tùy thuộc rất lớn vào phẩm chất của ảnh quét. Thông số cho quét ảnh tiêu biểu là 300 DPI và 1 bpp (bit per pixel) black&white hoặc 8 bpp grayscale dạng uncompressed TIFF.

 Các lỗi nhận dạng có thể phân làm ba loại. Nhiều lỗi thường bị bởi do lẫn lộn chữ hoa và chữ thường (upper and lower) — ví dụ: hOa, nhắC — có thể dễ dàng sửa chữa sử dụng các chương trình Unicode text editor. Lỗi do sự xử lý không chính xác, gây ra các lỗi như thiếu sót dấu, lầm với ký tự có hình dáng tương tự, v.v… — huu – hưu, mang – marg, h0a – hoa, la – 1a, uhìu - nhìn. Đa số các lỗi này cũng có thể dễ dàng sửa chữa dùng các phần mềm duyệt chính tả.

 Loại lỗi cuối cùng là khó phát hiện nhất bởi chúng liên quan đến ngữ nghĩa, semantics, có nghĩa là những chữ đánh vần đúng (tức là mục từ có trong tự điển), nhưng sai nghĩa trong ngữ cảnh (context) — ví dụ: tinh – tình, vân – vấn. Những lỗi này cần phải có người đọc duyệt lại và sửa theo bản gốc trong hình.

 Sau đây là hướng dẫn cách sửa chữa 1 cách nhanh chóng và hiệu quả 2 loại lỗi đầu tiên, sử dụng chương trình VietPad (cả phiên bản Java và .NET). Quy trình có thể tóm tắt như sau:

  1. Gom dòng. Các hàng chữ (line) cần được gom lại theo từng đoạn (paragraph), bởi khi được OCR, các hàng chữ đứng riêng trong các đoạn 1 hàng (1-line paragraph). Dùng tính năng Nối dòng trong menu Định dạng. Lưu ý rằng tác vụ này có thể không cần cho thi thơ.
  2. Cũng trong menu Định dạng , bấm Đổi ngữ cách và chọn Chữ hoa đầu câu để sửa gần như tất cả các lỗi chữ hoa-thường. Hãy dò tìm và sửa các lỗi hoa-thường còn sót.
  3. Sửa lỗi chính tả bằng tính năng Dò chính tả dưới menu Công cụ.

 Qua các bước trên, hầu hết các lỗi thông thường sẽ được loại trừ. Những lỗi ngữ nghĩa semantic còn sót lại ít, nhưng đòi hỏi người duyệt đọc dò lại toàn bộ văn bản để được giống y như văn bản gốc quét, và toàn thiện nếu muốn.

Mọi thắc mắc và trao đổi mời các bạn tham gia Diễn Đàn VietUnicode.

Download phần mềm tại đây: Tesseract OCR

Hướng dẫn tập huấn Tesseract OCR nhận dạng chữ Việt:

Ứng dụng thực tế cho thấy Tesseract OCR engine rất nhạy cảm tới sự khác biệt trong hình dáng phông chữ. Cho chữ Quốc ngữ, nếu dáng phông khác với bốn phông được hỗ trợ, sự chính xác suy giảm hẳn. Bạn sẽ phải tập huấn cho font của bạn, mà quy trình hơi phức tạp chút nhưng được giải thích chi tiết trong trang Tesseract Wiki.

Tóm lược như sau:

    1. Làm một ảnh tốt, sạch, uncompressed 300 DPI TIFF scan từ 1 trang của văn bản của bạn
    2. Đánh máy lại trang đó cho mục đích sửa lỗi và thực nghiệm
    3. Càng nhiều dữ kiện, kết quả OCR càng tốt, vì vậy hãy lập lại (1) and (2) cho đến khi bạn có ít nhất 4 trang. Giới hạn là 32
    4. Chạy tesseract command để tạo box files
    5. Chỉnh sửa box file sử dụng bbTesseract editing tool
    6. Chạy tesseract command để tạo data files (clustering)
    7. Thay tên file với tiếp đầu ngữ "vie." và copy data files vào tessdata directory, đè trên file đang hiện có
    8. Chạy OCR trên ảnh gốc để chứng thực công quả của bạn. Mức chính xác sẽ nằm trong tầm cao của 90%

Để cộng đồng có thể hưởng lợi từ công lao của bạn, xin vui lòng gửi data files. Chúng sẽ được đăng trong VietOCR's Downloadpage. Hãy nhớ ghi tên của font mà bạn đã tập huấn cho, để người sử dụng biết phải load bộ data nào vào tessdata directory khi OCR văn bản của họ.

 

Tổng số điểm của bài viết là: 12 trong 3 đánh giá

Xếp hạng: 4 - 3 phiếu bầu
Click để đánh giá bài viết

  Ý kiến bạn đọc

Những tin mới hơn

Những tin cũ hơn

Giới thiệu về Công ty cổ phần phát triển nguồn mở Việt Nam

Công ty cổ phần phát triển nguồn mở Việt Nam (VINADES.,JSC) là công ty mã nguồn mở đầu tiên của Việt Nam sở hữu riêng một mã nguồn mở nổi tiếng và đang được sử dụng ở hàng ngàn website lớn nhỏ trong mọi lĩnh vực. Wbsite đang hoạt động chính thức: http://vinades.vn/ Ra đời từ hoạt động của tổ chức...

Thăm dò ý kiến

Lợi ích của phần mềm nguồn mở là gì?

Thống kê truy cập
  • Đang truy cập190
  • Máy chủ tìm kiếm1
  • Khách viếng thăm189
  • Hôm nay16,004
  • Tháng hiện tại699,928
  • Tổng lượt truy cập50,036,224
  • Google phát hành search engine hỗ trợ tìm kiếm những tệp datasets

    Mục đích của Google luôn là giúp tổ chức, mã hóa và sắp xếp thông tin của thế giới với mục tiêu đầu tiên của nó là những trang web thương mại. Giờ đây, hãng muốn làm điều tương tự cho cộng đồng khoa học với một công cụ tìm kiếm mới cho bộ dữ liệu.
  • NukeViet tham gia OpenTechSummit Vietnam 2019

    OpenTechSummit là một chuỗi sự kiện về công nghệ tập trung vào các giải pháp phần cứng, phần mềm và các dự án nguồn mở ở khắp nơi trên thế giới được tổ chức thường niên từ 2009 đến nay. Năm nay, OpenTechSummit Vietnam 2019 với chủ đề “The future is FOSS" được tổ chức bởi 3 đối tác: FOSSASIA (Singapore), VFOSSA và Officience Vietnam diễn ra tại thành phố Hồ Chí Minh từ ngày 11-12/10/2019. NukeViet lần đầu mang đến sự kiện này thông tin về NukeViet 5.0 và giải pháp Autoweb dành cho các nhà phát triển web.
  • Google DNS hỗ trợ bảo mật DNS-over-TLS

    Google đã hỗ trợ giao thức bảo mật DNS-over-TLS, các nhà cung cấp dịch vụ sẽ không thể giám sát website bạn truy cập.
  • Google thử nghiệm tính năng ‘DNS over HTTPS’ (DoH) trong Chrome 78

    Ngay sau khi Mozilla công bố kế hoạch sớm bật ‘ DNS over HTTPS ‘ (DoH) cho người dùng Firefox ở Hoa Kỳ, Google hôm nay cho biết họ đang lên kế hoạch thử nghiệm công nghệ tập trung vào quyền riêng tư trong Chrome 78 sắp tới
  • Nhân Hòa tích hợp NukeViet vào Cloud365 và demo tại SFD 2019

    Ngày hội phần mềm tự do nguồn mở - Software Freedom Day (SFD) là sự kiện thường niên, được tổ chức hằng năm trên thế giới. Tại Việt Nam, SFD được tổ chức và quảng bá bởi Câu lạc bộ Phần mềm tự do nguồn mở (VFOSSA). Tại SFD 2019, Nhân Hòa giới thiệu Cloud365 tích hợp sẵn NukeViet.
  • Thông báo phát hành NukeViet 4.3.07

    NukeViet 4.3.07 tiếp tục là bản tiếp theo của thế hệ NukeViet 4.3. Phiên bản này tập trung vào sửa lỗi và thực hiện một số tối ưu hệ thống đồng thời bổ sung một vài tính năng nhỏ.
  • Người sử dụng sẽ sớm có thể cài đặt NukeViet tự động từ Softaculous

    NukeViet sẽ sớm có thể cài đặt tự động từ các control panel phổ biến như cPanel, DirectAdmin, Plesk thông qua Softaculous
 
Bạn đã không sử dụng Site, Bấm vào đây để duy trì trạng thái đăng nhập. Thời gian chờ: 60 giây