AIHieu.comAI Hiểu
AI tạo ảnh, giọng nói, video

AI đọc chữ trong ảnh (OCR) hoạt động thế nào và vì sao hay sai dấu tiếng Việt

Từ ảnh chụp trang giấy tới chữ chép lại được: máy tìm vùng chữ, tách dòng, đoán ký tự rồi sửa theo ngôn ngữ. Vì sao sai dấu, nhầm số và lúc nào phải soát kỹ.

Hands of an office clerk in Nghe An holding a phone above a blank sheet of paper on a wooden desk, top-down view, morning window light, muted teal and cream tones

OCR, tức nhận dạng ký tự quang học, là việc máy nhìn ảnh có chữ và chép lại thành chữ gõ được: nó tìm vùng có chữ, tách từng dòng, đoán chuỗi ký tự trong mỗi dòng, rồi dùng hiểu biết về ngôn ngữ để sửa những chỗ mờ. Các công cụ hiện nay dùng mạng nơ-ron học từ rất nhiều ảnh chữ, nên đọc khá tốt chữ in rõ, kể cả ảnh chụp bằng điện thoại.

Nhưng với tiếng Việt, những dấu nhỏ trên và dưới chữ cái là chỗ dễ sai nhất, chữ viết tay khó hơn chữ in rất nhiều, và những ký tự giống nhau như số không với chữ O, số một với chữ l có thể làm sai một con số quan trọng. Bài này giải thích máy đọc chữ ra sao, vì sao có những lỗi đó, và vì sao các chatbot đọc ảnh tài liệu cho bản chép rất mượt nhưng đôi khi tự "sửa" nội dung gốc.

Từ ảnh chụp tới dòng chữ: các bước bên trong

Bạn chụp một trang giấy và vài giây sau có chữ để sao chép. Đằng sau là một chuỗi bước, mỗi bước có thể làm sai theo cách riêng.

  1. Làm phẳng và làm rõ ảnh. Máy xoay lại trang bị nghiêng, nắn trang bị cong, tăng tương phản, khử bóng tay và bóng đèn.
  2. Tìm vùng có chữ. Một mô hình khoanh những vùng chứa chữ, phân biệt với hình vẽ, con dấu, đường kẻ bảng.
  3. Tách dòng và thứ tự đọc. Trang có nhiều cột, có bảng, có chú thích bên lề; máy phải quyết định đọc theo thứ tự nào. Sai bước này làm câu hai cột trộn vào nhau.
  4. Đoán chuỗi ký tự. Mô hình nhìn cả dòng chữ như một dải ảnh và đoán ra chuỗi ký tự tương ứng, thay vì cắt từng chữ cái riêng lẻ như các hệ thống đời cũ.
  5. Sửa theo ngôn ngữ. Một bước dùng từ điển hoặc mô hình ngôn ngữ để chọn cách đọc hợp lý khi một chữ mờ: "nguòi" được sửa thành "người".
  6. Dựng lại bố cục. Với tài liệu có bảng, tiêu đề, danh sách, máy cố gắng giữ cấu trúc để bản chép không thành một khối chữ liền.

Bước sửa theo ngôn ngữ là con dao hai lưỡi: nó cứu rất nhiều chữ mờ, nhưng cũng có thể đổi một chữ đúng nhưng hiếm thành một chữ phổ biến hơn. Với tên riêng, số hiệu, từ chuyên ngành, đây là nguồn lỗi khó phát hiện.

OCR ngày trước và OCR bây giờ khác nhau thế nào

Những hệ thống đọc chữ đời đầu so từng chữ cái với một bộ mẫu có sẵn. Chúng đọc được chữ in phông chuẩn trên giấy trắng, nhưng gặp phông lạ, chữ đậm nhạt không đều hay giấy ố là lúng túng. Mỗi phông chữ mới, mỗi ngôn ngữ mới lại phải bổ sung mẫu bằng tay. Tiếng Việt với hệ dấu chồng nhiều tầng là thách thức lớn với cách làm này.

Khi học sâu được áp dụng, máy không còn so mẫu cứng mà học từ hàng triệu ảnh dòng chữ có kèm lời đúng, gồm cả chữ chụp nghiêng, chữ mờ, chữ trên biển hiệu. Mô hình học được rằng một chữ "a" có thể trông rất khác nhau mà vẫn là "a". Nhờ vậy chất lượng đọc ảnh chụp bằng điện thoại tăng lên rõ, và việc số hoá giấy tờ trở nên rẻ, nhanh.

Bước mới nhất là dùng các mô hình đa phương thức, tức chatbot đọc được ảnh, để đọc cả trang một lúc. Chúng hiểu bố cục tốt, phân biệt được tiêu đề, bảng, chú thích, và có thể trả lời câu hỏi về nội dung thay vì chỉ chép lại. Điểm yếu của chúng lại khác hẳn OCR truyền thống, như phần sau sẽ nói: chúng sai theo kiểu của mô hình ngôn ngữ.

Vì sao dấu tiếng Việt là chỗ hay sai

Dấu là chi tiết nhỏ nhất trên trang. Dấu sắc, huyền, hỏi, ngã, nặng chỉ là vài điểm ảnh trên ảnh chụp điện thoại. Ảnh hơi mờ hoặc bị nén là dấu hỏi và dấu ngã dễ lẫn nhau, dấu nặng lẫn với vết bẩn.

Dấu chồng hai tầng. Những chữ như "ế", "ổ", "ẫ" vừa có dấu mũ vừa có dấu thanh chồng lên. Với phông chữ nhỏ, hai tầng dấu dính vào nhau, máy phải đoán dấu nào là dấu nào.

Dữ liệu ít hơn tiếng Anh. Mô hình được huấn luyện nhiều nhất trên chữ Latin không dấu. Với tiếng Việt, số ảnh chữ có lời đúng ít hơn, nên mô hình kém chắc tay với tổ hợp dấu hiếm.

Bước sửa ngôn ngữ đoán theo tần suất. Khi dấu không rõ, máy chọn từ phổ biến hơn. "Bản" và "bàn" đều có nghĩa; nếu ảnh không rõ, máy chọn từ thường gặp hơn trong ngữ cảnh, có khi sai với văn bản gốc.

Giấy tờ cũ, phông cũ. Văn bản đánh máy, in kim từ nhiều chục năm trước có phông chữ, cách đặt dấu khác ngày nay, mực nhoè, giấy ố. Đây là loại máy đọc kém nhất, cũng là loại người ta hay muốn số hoá nhất.

Chữ viết tay khó hơn chữ in rất nhiều

Chữ in của cùng một phông luôn giống nhau; chữ viết tay của mỗi người mỗi khác, và ngay một người viết nhanh viết chậm cũng khác. Các chữ cái dính liền nhau, nét kéo dài sang chữ bên cạnh, dấu đặt lệch sang chữ khác. Người đọc chữ viết tay dựa rất nhiều vào ngữ cảnh: biết đây là đơn thuốc, biết đây là danh sách đi chợ, nên đoán được chữ khó đọc. Máy cũng phải đoán như vậy, và đoán sai nhiều hơn.

Chữ viết tay tiếng Việt khó thêm một tầng: nhiều người viết dấu rất nhanh, gạch một nét chung cho cả dấu mũ và dấu thanh, hoặc bỏ dấu hẳn khi ghi chép vội. Chữ viết tay của học sinh tiểu học theo mẫu chữ trường học, chữ của người lớn tuổi viết theo lối cũ, chữ của bác sĩ viết vội trên đơn thuốc là những kiểu rất khác nhau, mà dữ liệu cho từng kiểu đều hạn chế.

Các công cụ hiện nay đọc chữ viết tay rõ ràng, nắn nót ở mức dùng được, nhưng với chữ viết vội, kết quả nên được xem như một bản phỏng đoán. Đặc biệt với giấy tờ y tế, giấy tờ pháp lý viết tay, người viết hoặc người có chuyên môn phải là người xác nhận nội dung, không phải máy.

Bảng, biểu mẫu, hoá đơn: đọc đúng chữ vẫn chưa đủ

Một tờ hoá đơn hay một bảng kê không chỉ là chữ mà là chữ đặt đúng chỗ: con số này thuộc cột "số lượng" hay cột "đơn giá", dòng này là tên hàng hay là ghi chú. Máy có thể đọc đúng từng ký tự mà vẫn cho ra kết quả vô dụng nếu xếp sai ô. Đây là lý do việc đọc giấy tờ có cấu trúc được tách thành một bài toán riêng, thường gọi là hiểu tài liệu, chứ không chỉ là nhận dạng chữ.

Để hiểu bố cục, mô hình phải nhìn cả vị trí, đường kẻ, khoảng trắng, cỡ chữ, rồi suy ra mối quan hệ giữa các mẩu chữ. Bảng có đường kẻ rõ thì dễ; bảng không kẻ, ô gộp, chữ tràn sang ô bên cạnh, hay biểu mẫu điền tay lệch dòng là chỗ máy hay xếp nhầm. Hoá đơn của mỗi nơi một kiểu cũng làm máy lúng túng nếu chưa từng gặp mẫu tương tự.

Các mô hình đa phương thức xử lý bố cục khá hơn vì nhìn cả trang một lúc, nhưng lại thêm rủi ro tự điền ô trống bằng giá trị "hợp lý". Khi đưa kết quả vào sổ sách, bảng tính hay phần mềm kế toán, cách an toàn là kiểm tổng: cộng lại các dòng xem có khớp với tổng in trên giấy không. Một phép cộng đơn giản bắt được rất nhiều lỗi xếp nhầm cột mà mắt lướt qua không thấy.

Những cặp ký tự máy hay nhầm và vì sao đáng sợ

Lỗi dấu làm câu sai chính tả, người đọc thường nhận ra. Lỗi nguy hiểm hơn là nhầm giữa những ký tự trông gần giống nhau, vì kết quả vẫn trông hợp lệ.

Cặp dễ nhầmHậu quả có thể gặp
Số 0 và chữ O, chữ DMã số, số hiệu văn bản, số tài khoản sai mà vẫn trông đúng định dạng
Số 1, chữ l thường, chữ I hoaMã sản phẩm, mật khẩu ghi trên giấy, biển số bị chép sai
Số 5 và chữ S, số 8 và chữ BSố tiền, số lượng bị đổi trong bảng kê
Dấu chấm và dấu phẩyTiếng Việt dùng dấu chấm tách hàng nghìn, dấu phẩy cho phần thập phân; nhầm là sai giá trị nghìn lần
Chữ đ và chữ dTên người, địa danh sai; "Đông" thành "Dông"
Số 6 và số 0, số 7 và số 1 viết tayNgày tháng, liều lượng ghi tay bị sai

Điểm chung: kiểm tra chính tả không bắt được những lỗi này, vì kết quả sai vẫn là ký tự hợp lệ. Cách duy nhất là đối chiếu lại với ảnh gốc ở những chỗ có số, mã, tên riêng.

Khi chatbot đọc ảnh tài liệu: bản chép mượt nhưng có thể đã bị "sửa"

Nhiều người giờ chụp tài liệu rồi nhờ chatbot chép lại hoặc tóm tắt. Kết quả thường đẹp hơn OCR truyền thống: đúng chính tả, đủ dấu, giữ được bảng. Nhưng vì chatbot là mô hình ngôn ngữ, nó có xu hướng tạo ra văn bản "nên có" chứ không nhất thiết là văn bản "đang có". Chỗ ảnh mờ, nó có thể điền bằng chữ hợp lý thay vì báo là không đọc được.

Một hệ quả ít ai nghĩ tới: chatbot có thể tự sửa lỗi chính tả có thật trong văn bản gốc, chuẩn hoá cách viết số, hay viết lại câu cho gọn. Với việc nhờ đọc hộ một tờ thông báo, điều đó vô hại. Với việc cần bản chép đúng nguyên văn, như hợp đồng, biên bản, tư liệu lịch sử, đơn từ, đó là sai lệch. Bản chép trông hoàn hảo lại là lý do người ta ít soát lại nhất.

Ngoài ra, chụp giấy tờ để đưa vào chatbot hay ứng dụng trực tuyến là đưa thông tin trong đó qua máy chủ của bên khác. Căn cước, sổ hộ khẩu cũ, hợp đồng, phiếu khám bệnh đều chứa dữ liệu cá nhân. Nên che những phần không cần, như số định danh, địa chỉ, trước khi gửi, và ưu tiên công cụ chạy ngay trên máy khi xử lý giấy tờ nhạy cảm. Trang AI Bảo Mật có bàn thêm cách xử lý dữ liệu cá nhân khi dùng AI.

Câu hỏi thường gặp

OCR có đọc được chữ Hán Nôm không?

Có những dự án nghiên cứu và công cụ chuyên cho chữ Hán Nôm, nhưng đây là bài toán khó hơn nhiều vì số lượng ký tự lớn, nhiều dị thể và dữ liệu có lời đúng hạn chế. Kết quả cần người biết chữ Nôm hiệu đính. OCR thông dụng trên điện thoại chủ yếu nhắm chữ quốc ngữ và các ngôn ngữ phổ biến.

Vì sao quét bằng điện thoại kết quả kém hơn máy quét?

Máy quét chiếu sáng đều và giữ trang phẳng, nên chữ rõ, không méo. Ảnh chụp điện thoại hay bị nghiêng, cong, bóng tay, lệch sáng, rung. Máy phải nắn lại ảnh trước khi đọc, và mỗi lần nắn mất một ít chi tiết, đúng loại chi tiết nhỏ như dấu tiếng Việt.

Máy có biết chỗ nào mình đọc không chắc không?

Nhiều hệ thống OCR tính điểm tin cậy cho từng chữ và có thể tô màu chỗ kém chắc chắn, nếu giao diện hiển thị. Chatbot đọc ảnh thì thường không tự báo, trừ khi bạn yêu cầu nó đánh dấu chỗ không đọc rõ. Ngay cả khi có điểm tin cậy, chữ được chấm cao vẫn có thể sai.

Chụp ảnh căn cước gửi cho ứng dụng đọc chữ có sao không?

Ảnh căn cước chứa nhiều dữ liệu cá nhân có thể bị lợi dụng để mạo danh. Chỉ gửi cho dịch vụ bạn tin cậy và thật sự cần, đọc chính sách lưu trữ, và nếu chỉ cần một phần thông tin thì che phần còn lại. Với việc cá nhân, gõ tay vài dòng đôi khi an toàn hơn chụp cả thẻ.

OCR và nhận dạng chữ viết tay có phải cùng một công nghệ không?

Cùng họ, cùng ý tưởng nhìn ảnh rồi đoán chuỗi ký tự, nhưng chữ viết tay cần mô hình được huấn luyện riêng trên nhiều mẫu chữ người viết. Một công cụ đọc chữ in rất tốt có thể đọc chữ viết tay kém. Một số hệ thống còn nhận nét bút theo thời gian khi bạn viết trên màn hình, khác với đọc ảnh chụp.

Có nên dùng OCR để số hoá giấy tờ gia đình không?

Rất nên, vì bản chữ tìm kiếm được tiện hơn ảnh chụp nhiều. Chỉ cần giữ lại ảnh hoặc bản quét gốc bên cạnh bản chữ, soát kỹ tên người, ngày tháng, số liệu, và đặt tên tệp rõ ràng. Bản chữ là để tìm và đọc nhanh; bản ảnh gốc là thứ để đối chiếu khi cần chính xác.

Cần tư vấn cụ thể cho trường hợp của bạn?

Chúng tôi sẽ liên hệ trong vòng 24 giờ.

Đăng ký tư vấn ngay

Bài viết liên quan

Bạn cần hỗ trợ thêm?

Để lại thông tin, chúng tôi sẽ liên hệ trong 24 giờ.

hoặc
Gọi ngay 0926 138 138