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 Photo CD (PCD) là một loại định dạng ảnh kỹ thuật số được Eastman Kodak phát triển vào đầu những năm 1990. Mục đích chính của định dạng PCD là cho phép người dùng lưu trữ ảnh kỹ thuật số có độ phân giải cao trên đĩa CD, sau đó có thể xem trên máy tính hoặc tivi bằng đầu phát Photo CD chuyên dụng. Định dạng PCD là một phần trong chiến lược rộng lớn hơn của Kodak nhằm thu hẹp khoảng cách giữa nhiếp ảnh phim truyền thống và thị trường nhiếp ảnh kỹ thuật số mới nổi. Nó được thiết kế để cung cấp cho các nhiếp ảnh gia và người tiêu dùng một cách thuận tiện để số hóa và lưu trữ hình ảnh phim của họ với độ trung thực cao.
Một trong những tính năng chính của định dạng PCD là sử dụng cấu trúc độ phân giải đa tỷ lệ, cho phép một tệp PCD duy nhất chứa nhiều độ phân giải của cùng một hình ảnh. Cấu trúc này dựa trên một kỹ thuật nén hình ảnh độc quyền do Kodak phát triển có tên là PhotoYCC. Không gian màu PhotoYCC tương tự như không gian màu YCbCr được sử dụng trong nén video, trong đó Y biểu thị thành phần độ sáng và Cb và Cr biểu thị các thành phần sắc độ. Không gian màu này đặc biệt phù hợp với hình ảnh nhiếp ảnh vì nó tách thông tin độ sáng khỏi thông tin màu sắc, phù hợp với cách hệ thống thị giác của con người xử lý hình ảnh.
Cấu trúc độ phân giải đa tỷ lệ của tệp PCD bao gồm năm cấp độ độ phân giải khác nhau, từ độ phân giải cơ sở/xem trước là 192x128 pixel đến độ phân giải tối đa là 3072x2048 pixel. Các độ phân giải này được gọi là Cơ sở/16, Cơ sở/4, Cơ sở, 4Cơ sở và 16Cơ sở, với độ phân giải Cơ sở là 768x512 pixel. Điều này cho phép sử dụng cho nhiều mục đích khác nhau, từ xem trước hình thu nhỏ đến in ấn chất lượng cao. Các độ phân giải khác nhau được lưu trữ theo định dạng phân cấp, cho phép phần mềm và phần cứng nhanh chóng truy cập cấp độ độ phân giải phù hợp cho một tác vụ nhất định mà không cần phải xử lý toàn bộ tệp hình ảnh.
Các tệp PCD thường được tạo bằng hệ thống Photo CD của Kodak, bao gồm việc quét phim âm bản hoặc phim chiếu bằng máy quét có độ phân giải cao, sau đó ghi hình ảnh kỹ thuật số vào đĩa CD theo định dạng PCD. Quá trình quét được hiệu chỉnh cẩn thận để đảm bảo tái tạo màu chính xác và nắm bắt toàn bộ dải động của phim. Các tệp PCD kết quả được dự định là một kho lưu trữ kỹ thuật số của hình ảnh phim, có khả năng tạo ra các bản in chất lượng cao và dễ dàng chia sẻ và xem trên nhiều thiết bị khác nhau.
Định dạng PCD cũng kết hợp một số trường siêu dữ liệu lưu trữ thông tin về hình ảnh và quá trình quét. Siêu dữ liệu này có thể bao gồm ngày và giờ chụp ảnh, loại phim được sử dụng, cài đặt máy quét và các chi tiết liên quan khác. Thông tin này có thể có giá trị cho mục đích lưu trữ, cũng như đối với các nhiếp ảnh gia muốn theo dõi các khía cạnh kỹ thuật của hình ảnh của họ.
Mặc dù có các tính năng tiên tiến và chất lượng hình ảnh cao, định dạng PCD vẫn phải đối mặt với một số thách thức hạn chế việc áp dụng rộng rãi. Một trong những thách thức chính là bản chất độc quyền của định dạng, có nghĩa là nó chỉ có thể được sử dụng đầy đủ với phần mềm và phần cứng của riêng Kodak. Khả năng tương thích hạn chế này với phần mềm và thiết bị của bên thứ ba khiến nó trở nên kém hấp dẫn đối với người tiêu dùng và các chuyên gia vốn đã sử dụng các định dạng hình ảnh và phần mềm chỉnh sửa khác.
Một thách thức khác đối với định dạng PCD là sự phát triển nhanh chóng của công nghệ máy ảnh kỹ thuật số và tính khả dụng ngày càng tăng của máy ảnh kỹ thuật số giá cả phải chăng. Khi máy ảnh kỹ thuật số trở nên có khả năng hơn và cung cấp độ phân giải cao hơn, nhu cầu quét hình ảnh phim trở nên ít quan trọng hơn đối với nhiều người dùng. Ngoài ra, sự xuất hiện của các định dạng hình ảnh kỹ thuật số khác, chẳng hạn như JPEG và TIFF, vốn cởi mở hơn và được hỗ trợ rộng rãi hơn, đã cung cấp cho người dùng các tùy chọn linh hoạt và dễ tiếp cận hơn để lưu trữ và chia sẻ hình ảnh kỹ thuật số.
Mặc dù có những thách thức này, định dạng PCD vẫn được một số nhiếp ảnh gia chuyên nghiệp và những người đam mê đánh giá cao chất lượng hình ảnh cao và khả năng số hóa phim với độ trung thực cao. Trong một thời gian, nó cũng được các phòng thí nghiệm ảnh và nhà cung cấp dịch vụ sử dụng để cung cấp dịch vụ quét và lưu trữ phim. Tuy nhiên, khi thị trường nhiếp ảnh kỹ thuật số tiếp tục phát triển và phát triển, việc sử dụng định dạng PCD dần suy giảm.
Về mặt kỹ thuật, định dạng PCD đáng chú ý vì sử dụng không gian màu PhotoYCC đã đề cập ở trên và cấu trúc độ phân giải đa tỷ lệ của nó. Định dạng này sử dụng thuật toán nén có mất mát để giảm kích thước tệp trong khi vẫn duy trì chất lượng hình ảnh cao. Việc nén được áp dụng theo cách tận dụng các đặc điểm của hệ thống thị giác của con người, nhấn mạnh việc bảo toàn chi tiết độ sáng hơn chi tiết sắc độ, vốn ít đáng chú ý hơn đối với mắt người.
Cấu trúc tệp PCD bao gồm một số phần khác nhau, bao gồm phần đầu, thư mục hình ảnh cho từng cấp độ độ phân giải và chính dữ liệu hình ảnh. Phần đầu chứa thông tin về phiên bản định dạng tệp và số lượng hình ảnh được lưu trữ trên đĩa CD. Mỗi thư mục hình ảnh chứa siêu dữ liệu về hình ảnh, cũng như các con trỏ đến vị trí của dữ liệu hình ảnh cho cấp độ độ phân giải đó trong tệp.
Dữ liệu hình ảnh trong tệp PCD được lưu trữ theo định dạng xếp ô, với hình ảnh được chia thành các phần hình chữ nhật nhỏ gọi là ô. Mỗi ô được nén độc lập, cho phép truy cập và thao tác dữ liệu hiệu quả hơn. Hệ thống xếp ô này cũng tạo điều kiện thuận lợi cho việc lưu trữ phân cấp các cấp độ độ phân giải khác nhau, vì có thể tạo các hình ảnh có độ phân giải thấp hơn bằng cách kết hợp và hạ mẫu các ô từ các cấp độ độ phân giải cao hơn.
Để xem hoặc chỉnh sửa tệp PCD, người dùng thường cần phần mềm chuyên dụng có thể đọc định dạng PCD và xử lý cấu trúc độ phân giải đa tỷ lệ của nó. Kodak cung cấp phần mềm riêng của mình cho mục đích này, nhưng cũng có các giải pháp phần mềm của bên thứ ba cung cấp các mức hỗ trợ khác nhau cho tệp PCD. Một số phần mềm chỉnh sửa hình ảnh hiện đại vẫn bao gồm hỗ trợ cho định dạng PCD, mặc dù nó ít phổ biến hơn so với hỗ trợ cho các định dạng được sử dụng rộng rãi hơn như JPEG và TIFF.
Về kích thước tệp, tệp PCD có thể khá lớn, đặc biệt là ở các cấp độ độ phân giải cao nhất. Điều này là do định dạng được thiết kế để bảo toàn chất lượng của h ình ảnh phim gốc, đòi hỏi một lượng dữ liệu đáng kể. Tuy nhiên, thuật toán nén được sử dụng trong tệp PCD giúp giảm bớt kích thước tệp ở một mức độ nào đó, giúp việc lưu trữ và truyền hình ảnh dễ quản lý hơn.
Định dạng PCD cũng bao gồm hỗ trợ cho một tính năng có tên là 'Photo CD Portfolio', cho phép người dùng sắp xếp và quản lý hình ảnh của họ trên đĩa CD theo cách có cấu trúc. Tính năng này bao gồm khả năng tạo album, phân loại hình ảnh và thêm văn bản mô tả vào từng hình ảnh. Tính năng Portfolio nhằm mục đích giúp người dùng dễ dàng điều hướng và thưởng thức các bộ sưu tập ảnh kỹ thuật số của họ.
Tóm lại, định dạng hình ảnh PCD là một giải pháp sáng tạo để số hóa và lưu trữ ảnh phim trong giai đoạn chuyển đổi từ nhiếp ảnh analog sang kỹ thuật số. Cấu trúc độ phân giải đa tỷ lệ, sử dụng không gian màu PhotoYCC và chất lượng hình ảnh cao của nó đã biến nó trở thành một công cụ có giá trị đối với các chuyên gia và những người đam mê yêu cầu các bản sao kỹ thuật số có độ trung thực cao của hình ảnh phim của họ. Tuy nhiên, bản chất độc quyền của định dạng, cùng với sự tiến bộ nhanh chóng trong công nghệ máy ảnh kỹ thuật số và sự gia tăng của các định dạng hình ảnh kỹ thuật số linh hoạt hơn, cuối cùng đã dẫn đến sự suy giảm của định dạng PCD. Ngày nay, nó vẫn là một phần của lịch sử nhiếp ảnh kỹ thuật số và các khía cạnh kỹ thuật của nó vẫn được quan tâm đối với những người nghiên cứu về sự phát triển của lưu trữ và nén hình ảnh kỹ thuật số.
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.