Nhận dạng ký tự quang học (OCR) biến hình ảnh văn bản—bản quét, ảnh chụp từ điện thoại thông minh, PDF—thành các chuỗi máy có thể đọc được và, ngày càng nhiều, dữ liệu có cấu trúc. OCR hiện đại là một quy trình làm sạch hình ảnh, tìm văn bản, đọc nó và xuất siêu dữ liệu phong phú để các hệ thống hạ nguồn có thể tìm kiếm, lập chỉ mục hoặc trích xuất các trường. Hai tiêu chuẩn đầu ra được sử dụng rộng rãi là hOCR, một định dạng vi mô HTML cho văn bản và bố cục, và ALTO XML, một lược đồ hướng thư viện/lưu trữ; cả hai đều bảo toàn vị trí, thứ tự đọc và các tín hiệu bố cục khác và được hỗ trợ bởi các công cụ phổ biến như Tesseract.
Tiền xử lý. Chất lượng OCR bắt đầu bằng việc dọn dẹp hình ảnh: chuyển đổi thang độ xám, khử nhiễu, ngưỡng (nhị phân hóa), và chỉnh lệch. Các hướng dẫn OpenCV kinh điển bao gồm toàn cục, thích ứng và Otsu ngưỡng—những yếu tố chính cho các tài liệu có ánh sáng không đồng đều hoặc biểu đồ hai mode. Khi độ sáng thay đổi trong một trang (hãy nghĩ đến ảnh chụp bằng điện thoại), các phương pháp thích ứng thường hoạt động tốt hơn một ngưỡng toàn cục duy nhất; Otsu tự động chọn một ngưỡng bằng cách phân tích biểu đồ. Chỉnh sửa độ nghiêng cũng quan trọng không kém: chỉnh lệch dựa trên Hough (Biến đổi dòng Hough) kết hợp với nhị phân hóa Otsu là một công thức phổ biến và hiệu quả trong các quy trình tiền xử lý sản xuất.
Phát hiện và nhận dạng. OCR thường được chia thành phát hiện văn bản (văn bản ở đâu ?) và nhận dạng văn bản (nó nói gì?). Trong các cảnh tự nhiên và nhiều bản quét, các bộ phát hiện tích chập hoàn toàn như EAST dự đoán hiệu quả các tứ giác ở cấp độ từ hoặc dòng mà không cần các giai đoạn đề xuất nặng nề và được triển khai trong các bộ công cụ phổ biến (ví dụ: hướng dẫn phát hiện văn bản của OpenCV). Trên các trang phức tạp (báo, biểu mẫu, sách), việc phân đoạn các dòng/vùng và suy luận thứ tự đọc rất quan trọng:Kraken triển khai phân đoạn vùng/dòng truyền thống và phân đoạn đường cơ sở thần kinh, với sự hỗ trợ rõ ràng cho các tập lệnh và hướng khác nhau (LTR/RTL/dọc).
Mô hình nhận dạng. Công cụ mã nguồn mở cổ điển Tesseract (do Google mở nguồn, có nguồn gốc từ HP) đã phát triển từ một bộ phân loại ký tự thành một bộ nhận dạng chuỗi dựa trên LSTM và có thể phát hành các tệp PDF có thể tìm kiếm, đầu ra thân thiện với hOCR/ALTO, và nhiều hơn nữa từ CLI. Các bộ nhận dạng hiện đại dựa vào mô hình hóa chuỗi mà không cần các ký tự được phân đoạn trước. Phân loại thời gian kết nối (CTC) vẫn là nền tảng, học các sự sắp xếp giữa các chuỗi đặc trưng đầu vào và chuỗi nhãn đầu ra; nó được sử dụng rộng rãi trong các quy trình xử lý chữ viết tay và văn bản cảnh.
Trong vài năm qua, Transformers đã định hình lại OCR. TrOCR sử dụng một bộ mã hóa Vision Transformer cộng với một bộ giải mã Text Transformer, được đào tạo trên các kho ngữ liệu tổng hợp lớn sau đó được tinh chỉnh trên dữ liệu thực, với hiệu suất mạnh mẽ trên các tiêu chuẩn văn bản in, viết tay và cảnh (xem thêm tài liệu Hugging Face). Song song đó, một số hệ thống bỏ qua OCR để hiểu biết hạ nguồn: Donut (Document Understanding Transformer) là một bộ mã hóa-giải mã không có OCR, trực tiếp xuất ra các câu trả lời có cấu trúc (như JSON khóa-giá trị) từ tài liệu hình ảnh (repo, thẻ mô hình), tránh tích lũy lỗi khi một bước OCR riêng biệt cung cấp cho một hệ thống IE.
Nếu bạn muốn đọc văn bản có sẵn trên nhiều tập lệnh, EasyOCR cung cấp một API đơn giản với hơn 80 mô hình ngôn ngữ, trả về các hộp, văn bản và độ tin cậy—tiện dụng cho các nguyên mẫu và các tập lệnh không phải tiếng Latinh. Đối với các tài liệu lịch sử, Kraken tỏa sáng với phân đoạn đường cơ sở và thứ tự đọc nhận biết tập lệnh; để đào tạo cấp dòng linh hoạt, Calamari xây dựng trên dòng dõi Ocropy (Ocropy) với các bộ nhận dạng (đa)LSTM+CTC và một CLI để tinh chỉnh các mô hình tùy chỉnh.
Sự khái quát hóa phụ thuộc vào dữ liệu. Đối với chữ viết tay, Cơ sở dữ liệu chữ viết tay IAM cung cấp các câu tiếng Anh đa dạng về người viết để đào tạo và đánh giá; đó là một bộ tham chiếu lâu đời cho nhận dạng dòng và từ. Đối với văn bản cảnh, COCO-Text đã xếp lớp các chú thích mở rộng trên MS-COCO, với các nhãn cho văn bản in/viết tay, dễ đọc/khó đọc, tập lệnh và bản ghi đầy đủ (xem thêm trang dự án ban đầu). Lĩnh vực này cũng phụ thuộc nhiều vào việc đào tạo trước tổng hợp: SynthText in the Wild kết xuất văn bản thành các bức ảnh với hình học và ánh sáng thực tế, cung cấp khối lượng dữ liệu khổng lồ để đào tạo trước các bộ phát hiện và nhận dạng (tham khảo mã và dữ liệu).
Các cuộc thi dưới chiếc ô Đọc mạnh mẽ của ICDAR giữ cho việc đánh giá có cơ sở. Các nhiệm vụ gần đây nhấn mạnh việc phát hiện/đọc từ đầu đến cuối và bao gồm việc liên kết các từ thành các cụm từ, với mã chính thức báo cáo độ chính xác/độ thu hồi/F-score, giao nhau trên hợp nhất (IoU), và các số liệu khoảng cách chỉnh sửa cấp ký tự—phản ánh những gì các nhà thực hành nên theo dõi.
OCR hiếm khi kết thúc ở văn bản thuần túy. Các kho lưu trữ và thư viện số thích ALTO XML vì nó mã hóa bố cục vật lý (các khối/dòng/từ có tọa độ) cùng với nội dung, và nó kết hợp tốt với bao bì METS. hOCR định dạng vi mô, ngược lại, nhúng cùng một ý tưởng vào HTML/CSS bằng cách sử dụng các lớp như ocr_line và ocrx_word, giúp dễ dàng hiển thị, chỉnh sửa và chuyển đổi bằng các công cụ web. Tesseract phơi bày cả hai—ví dụ: tạo hOCR hoặc PDF có thể tìm kiếm trực tiếp từ CLI (hướng dẫn xuất PDF); Các trình bao bọc Python như pytesseract thêm sự tiện lợi. Các bộ chuyển đổi tồn tại để dịch giữa hOCR và ALTO khi các kho lưu trữ có các tiêu chuẩn nhập liệu cố định —xem danh sách được tuyển chọn này của công cụ định dạng tệp OCR.
Xu hướng mạnh mẽ nhất là sự hội tụ: phát hiện, nhận dạng, mô hình hóa ngôn ngữ và thậm chí cả giải mã cho tác vụ cụ thể đang hợp nhất thành các ngăn xếp Transformer thống nhất. Đào tạo trước trên các kho ngữ liệu tổng hợp lớn vẫn là một hệ số nhân. Các mô hình không có OCR sẽ cạnh tranh quyết liệt ở bất cứ đâu mục tiêu là các đầu ra có cấu trúc thay vì các bản ghi nguyên văn. Cũng mong đợi các triển khai kết hợp: một bộ phát hiện nhẹ cộng với một bộ nhận dạng kiểu TrOCR cho văn bản dạng dài, và một mô hình kiểu Donut cho các biểu mẫu và biên lai.
Tesseract (GitHub) · Tài liệu Tesseract · Thông số kỹ thuật hOCR · Nền tảng ALTO · Bộ phát hiện EAST · Phát hiện văn bản OpenCV · TrOCR · Donut · COCO-Text · SynthText · Kraken · Calamari OCR · ICDAR RRC · pytesseract · Chữ viết tay IAM · Công cụ định dạng tệp OCR · EasyOCR
Optical Character Recognition (OCR) là một công nghệ được sử dụng để chuyển đổi các loại tài liệu khác nhau, như tài liệu giấy đã quét, tệp PDF hoặc hình ảnh được chụp bằng máy ảnh số, thành dữ liệu có thể chỉnh sửa và tìm kiếm.
OCR hoạt động bằng cách quét hình ảnh hoặc tài liệu đầu vào, phân đoạn hình ảnh thành các ký tự riêng lẻ, và so sánh từng ký tự với cơ sở dữ liệu hình dạng ký tự bằng cách sử dụng nhận dạng mô hình hoặc nhận dạng đặc trưng.
OCR được sử dụng trong nhiều lĩnh vực và ứng dụng, bao gồm số hóa tài liệu in, kích hoạt các dịch vụ văn bản thành giọng nói, tự động hóa quá trình nhập dữ liệu, và hỗ trợ người dùng khiếm thị tương tác tốt hơn với văn bản.
Mặc dù đã có những tiến bộ vượt bậc trong công nghệ OCR, nhưng nó không phải lúc nào cũng hoàn hảo. Độ chính xác có thể thay đổi tùy thuộc vào chất lượng của tài liệu gốc và chi tiết của phần mềm OCR đang được sử dụng.
Mặc dù OCR chủ yếu được thiết kế cho văn bản in, một số hệ thống OCR tiên tiến cũng có thể nhận dạng được chữ viết tay rõ ràng, nhất quán. Tuy nhiên, nhận dạng chữ viết tay thường kém chính xác hơn do sự biến đổi lớn trong các kiểu viết của mỗi người.
Có, nhiều hệ thống phần mềm OCR có thể nhận dạng được nhiều ngôn ngữ. Tuy nhiên, điều quan trọng là phải đảm bảo rằng ngôn ngữ cụ thể đó được hỗ trợ bởi phần mềm bạn đang sử dụng.
OCR là viết tắt của Optical Character Recognition và được sử dụng để nhận dạng văn bản in, trong khi ICR, hoặc Intelligent Character Recognition, tiên tiến hơn và được sử dụng để nhận dạng văn bản viết tay.
OCR hoạt động tốt nhất với các phông chữ rõ ràng, dễ đọc và kích cỡ văn bản chuẩn. Mặc dù nó có thể hoạt động với các phông chữ và kích cỡ khác nhau, độ chính xác thường giảm khi đối phó với phông chữ không thông thường hoặc kích cỡ văn bản rất nhỏ.
OCR có thể gặp khó khăn với các tài liệu độ phân giải thấp, phông chữ phức tạp, văn bản in kém, chữ viết tay, và các tài liệu có nền gây ra sự can thiệp với văn bản. Ngoài ra, mặc dù nó có thể hoạt động với nhiều ngôn ngữ, nó có thể không bao phủ hoàn hảo mọi ngôn ngữ.
Có, OCR có thể quét văn bản màu và nền màu, mặc dù nó thường hiệu quả hơn với các sự kết hợp màu đối lập cao, như văn bản đen trên nền trắng. Độ chính xác có thể giảm khi màu văn bản và màu nền không có đủ độ tương phản.
**Định dạng ảnh nhỏ gọn (CIP)** là một định dạng tệp ảnh hiện đại được thiết kế để cung cấp một cách hiệu quả để lưu trữ và truyền tải hình ảnh, đặc biệt là đối với các ứng dụng web và di động, nơi băng thông và không gian lưu trữ rất quan trọng. Không giống như các định dạng truyền thống như JPEG, PNG và GIF, CIP tận dụng các thuật toán nén tiên tiến và cấu trúc mô-đun để đạt được tỷ lệ nén vượt trội mà không làm giảm đáng kể chất lượng hình ảnh. Bài giải thích kỹ thuật này đi sâu vào sự phức tạp của định dạng CIP, bao gồm kiến trúc, kỹ thuật nén và các ứng dụng thực tế của nó.
Điểm cốt lõi của định dạng CIP là cấu trúc mô-đun của nó, cho phép có mức độ linh hoạt và khả năng mở rộng cao. Một tệp CIP bao gồm một số mô-đun độc lập, mỗi mô-đun chịu trách nhiệm cho một khía cạnh cụ thể của hình ảnh, chẳng hạn như siêu dữ liệu, bảng màu, dữ liệu pixel và các thành phần tùy chọn như độ trong suốt alpha hoặc khung hình động. Tính mô-đun này không chỉ tạo điều kiện cho các quy trình mã hóa và giải mã hiệu quả mà còn giúp các tệp CIP có thể tùy chỉnh cao để phù hợp với các nhu cầu hoặc ràng buộc cụ thể.
Một trong những tính năng chính giúp CIP khác biệt với các định dạng hình ảnh khác là kỹ thuật nén tiên tiến của nó. CIP sử dụng kết hợp các phương pháp nén không mất dữ liệu và mất dữ liệu, lựa chọn động kỹ thuật phù hợp nhất dựa trên nội dung hình ảnh và sự cân bằng mong muốn giữa tỷ lệ nén và chất lượng hình ảnh. Đối với hình ảnh đồ họa có các cạnh sắc nét và màu sắc đặc, CIP sử dụng các thuật toán nén không mất dữ liệu để bảo toàn tính toàn vẹn của từng pixel. Đối với hình ảnh chụp có nhiều biến thể màu sắc tinh tế hơn, CIP sử dụng một thuật toán nén mất dữ liệu tinh vi giúp giảm kích thước tệp bằng cách đơn giản hóa các chuyển màu mà không gây ra sự suy giảm đáng chú ý đối với mắt người.
Để đạt được tỷ lệ nén cao mà không ảnh hưởng đến chất lượng, cơ chế nén mất dữ liệu của CIP kết hợp một kỹ thuật độc quyền được gọi là 'Xấp xỉ pixel thông minh'. Phương pháp này phân tích bảng màu và các đặc điểm không gian của hình ảnh để xác định các vùng mà các biến thể màu sắc có thể được sắp xếp hợp lý mà không ảnh hưởng đáng kể đến chất lượng hình ảnh được nhận thức. Bằng cách xấp xỉ thông minh các màu tương tự và hợp nhất các chi tiết nhỏ thành các vùng lớn hơn, đồng đều hơn, CIP có thể giảm đáng kể lượng dữ liệu cần thiết để biểu diễn một hình ảnh trong khi vẫn duy trì độ trung thực trực quan của nó.
Một cải tiến khác trong định dạng CIP là tính năng thay đổi độ phân giải thích ứng. Điều này cho phép lưu trữ hình ảnh CIP ở nhiều độ phân giải trong một tệp duy nhất, cho phép các ứng dụng lựa chọn động độ phân giải phù hợp nhất dựa trên thiết bị hiển thị hoặc các ràng buộc về băng thông. Tính năng này đặc biệt có lợi cho thiết kế web phản hồi và các ứng dụng di động, nơi chất lượng hình ảnh cần được tối ưu hóa cho nhiều kích thước màn hình và điều kiện mạng khác nhau. Bằng cách nhúng nhiều độ phân giải vào một tệp duy nhất, CIP loại bỏ nhu cầu sử dụng các tệp riêng biệt cho mỗi độ phân giải, giúp đơn giản hóa việc quản lý nội dung và giảm tải cho máy chủ.
CIP cũng giới thiệu một cách tiếp cận độc đáo để xử lý độ trong suốt và hoạt ảnh, giúp nó khác biệt với các định dạng hình ảnh khác. Đối với độ trong suốt, CIP sử dụng một mô-đun riêng biệt có thể đ ược bao gồm tùy chọn trong tệp, cho phép nén hiệu quả hơn bằng cách cô lập các vùng trong suốt khỏi dữ liệu màu. Điều này dẫn đến tỷ lệ nén vượt trội so với các phương pháp truyền thống kết hợp độ trong suốt và thông tin màu sắc. Khi nói đến hoạt ảnh, CIP hỗ trợ cả hoạt ảnh dựa trên khung hình và hoạt ảnh dựa trên vectơ trong cùng một cấu trúc tệp, mang lại sự linh hoạt trong việc tạo nội dung động mà không cần các tệp hoặc định dạng riêng biệt.
Quy trình mã hóa của tệp CIP bao gồm một số giai đoạn, bắt đầu bằng việc phân tích cú pháp nội dung hình ảnh để xác định các mô-đun riêng biệt như siêu dữ liệu, dữ liệu màu và bất kỳ thành phần tùy chọn nào. Sau đó, mỗi mô-đun được nén bằng kỹ thuật nén phù hợp nhất, sau đó tất cả các mô-đun được đóng gói lại thành một tệp CIP duy nhất, gắn kết. Cách tiếp cận mô-đun này không chỉ cải thiện hiệu quả nén mà còn hợp lý hóa các quy trình mã hóa và giải mã, vì các mô-đun có thể được xử lý độc lập với nhau.
Giải mã tệp CIP cũng hiệu quả không kém, nhờ thiết kế mô-đun của nó. Các ứng dụng có thể nhanh chóng truy cập các mô-đun cụ thể mà không cần giải mã toàn bộ tệp, giúp tăng tốc đáng kể thời gian hiển thị hình ảnh. Điều này đặc biệt có lợi cho các ứng dụng web yêu cầu thời gian tải nhanh để cải thiện trải nghiệm người dùng. Hơn nữa, nhờ các kỹ thuật nén thông minh, hình ảnh CIP có thể được hiển thị ở chất lượng cao ngay cả ở độ phân giải thấp hơn, đảm bảo rằng người dùng vẫn thưởng thức nội dung hấp dẫn về mặt trực quan trong điều kiện băng thông hoặc lưu trữ hạn chế.
Sự phát triển của định dạng hình ảnh CIP phản ánh xu hướng liên tục hướng tới việc tối ưu hóa nội dung kỹ thuật số cho các nền tảng web và di động hiện đại. Với mức tiêu thụ dữ liệu và kỳ vọng của người dùng liên tục tăng cao, các định dạng như CIP rất quan trọng trong việc cân bằng nhu cầu về hình ảnh chất lượng cao với các cân nhắc thực tế như kích thước tệp, tốc độ tải và hiệu quả mạng. Bằng cách giải quyết trực diện những thách thức này, CIP không chỉ nâng cao trải nghiệm web trực quan mà còn góp phần giảm dấu chân dữ liệu tổng thể của nội dung trực tuyến, một mối quan tâm chính trong kỷ nguyên thống trị của thiết bị di động.
Việc triển khai hỗ trợ định dạng CIP trong phần mềm và ứng dụng yêu cầu phải hiểu cấu trúc và thuật toán của nó. Các nhà phát triển có thể tận dụng các thư viện và SDK hiện có cung cấp các chức năng để mã hóa và giải mã hình ảnh CIP, tích hợp chúng vào các đường ống xử lý hình ảnh hoặc hệ thống quản lý nội dung. Với tính mô-đun của định dạng, các nhà phát triển cũng có sự linh hoạt để tùy chỉnh các quy trình mã hóa và giải mã để tối ưu hóa cho các trường hợp sử dụng cụ thể, cho dù đó là ưu tiên tỷ lệ nén, chất lượng hình ảnh hay tốc độ giải mã.
Việc áp dụng CIP trên nhiều lĩnh vực khác nhau làm nổi bật tính linh hoạt và hiệu quả của nó. Trong phát triển web, hình ảnh CIP làm giảm đáng kể thời gian tải trang web, cải thiện thứ hạng công cụ tìm kiếm và tỷ lệ giữ chân người dùng. Đối với các ứng dụng di động, việc sử dụng hiệu quả băng thông và dung lượng lưu trữ của định dạng này giúp tạo ra trải nghiệm mượt mà hơn, phản hồi nhanh hơn ngay cả trên các thiết bị có tài nguyên hạn chế. Hơn nữa, trong xuất bản kỹ thuật số và phương tiện trực tuyến, độ phân giải thích ứng và khả năng nén tiên tiến của CIP đảm bảo rằng hình ảnh chất lượng cao có thể được phân phối hiệu quả, nâng cao sức hấp dẫn trực quan của nội dung mà không có nhược điểm của kích thước tệp lớn.
So với các định dạng hình ảnh khác, CIP cung cấp lợi thế cạnh tranh trong các trường hợp mà sự cân bằng giữa chất lượng hình ảnh và kích thước tệp là tối quan trọng. Trong khi các định dạng như JPEG và PNG được sử dụng rộng rãi và được hỗ trợ, các phương pháp nén và giới hạn cấu trúc của chúng thường dẫn đến kích thước tệp lớn hơn hoặc chất lượng thấp hơn ở các mức nén tương đương. Tính nén thông minh và tính mô-đun của CIP không chỉ cung cấp hiệu quả vượt trội mà còn giúp định dạng này có khả năng thích ứng với tương lai, cho phép các tính năng và cải tiến mới mà không làm mất đi khả năng tương thích với nội dung hiện có.
Sự phát triển và chuẩn hóa liên tục của định dạng CIP rất quan trọng đối với việc áp dụng rộng rãi hơn và thành công lâu dài của nó. Các hợp tác và đóng góp của ngành vào thông số kỹ thuật CIP đảm bảo rằng nó vẫn phù hợp và tiếp tục đáp ứng các nhu cầu đang thay đổi của những người tạo và người tiêu dùng nội dung kỹ thuật số. Như một phần của nỗ lực này, các tài liệu, hướng dẫn và diễn đàn cộng đồng mở rộng có sẵn để hỗ trợ các nhà phát triển áp dụng CIP, vượt qua các thách thức kỹ thuật và chia sẻ các phương pháp hay nhất để tối ưu hóa nội dung hình ảnh.
Khi bối cảnh kỹ thuật số phát triển, các yêu cầu đối với các định dạng hình ảnh cũng sẽ thay đổi. Thiết kế của CIP, tập trung vào tính linh hoạt, hiệu quả và chất lượng, định vị nó tốt để thích ứng với các thách thức trong
Bộ chuyển đổi này chạy hoàn toàn trong trình duyệt của bạn. Khi bạn chọn một tệp, nó sẽ được đọc vào bộ nhớ và chuyển đổi sang định dạng đã chọn. Sau đó, bạn có thể tải xuống tệp đã chuyển đổi.
Việc chuyển đổi bắt đầu ngay lập tức và hầu hết các tệp được chuyển đổi trong vòng chưa đầy một giây. Các tệp lớn hơn có thể mất nhiều thời gian hơn.
Các tệp của bạn không bao giờ được tải lên máy chủ của chúng tôi. Chúng được chuyển đổi trong trình duyệt của bạn và sau đó tệp đã chuyển đổi sẽ được tải xuống. Chúng tôi không bao giờ thấy các tệp của bạn.
Chúng tôi hỗ trợ chuyển đổi giữa tất cả các định dạng hình ảnh, bao gồm JPEG, PNG, GIF, WebP, SVG, BMP, TIFF, v.v.
Bộ chuyển đổi này hoàn toàn miễn phí và sẽ luôn miễn phí. Bởi vì nó chạy trong trình duyệt của bạn, chúng tôi không phải trả tiền cho máy chủ, vì vậy chúng tôi không cần tính phí bạn.
Đúng! Bạn có thể chuyển đổi bao nhiêu tệp tùy thích cùng một lúc. Chỉ cần chọn nhiều tệp khi bạn thêm chúng.