Thực hiện OCR bằng C#

OCR (Nhận dạng ký tự quang học) là một công nghệ nổi tiếng và được sử dụng rộng rãi để nhận dạng và đọc văn bản từ hình ảnh và tài liệu được quét. Trong thao tác OCR, các ký tự trên hình ảnh được quét, nhận dạng và chuyển đổi thành dạng kỹ thuật số. Văn bản đã chuyển đổi có thể được xác thực và lưu lại để thực hiện các thao tác tiếp theo. Trong bài viết này, tôi sẽ chỉ cho bạn cách thực hiện OCR để chuyển đổi hình ảnh thành văn bản theo chương trình bằng thư viện C# .NET OCR. Phần còn lại của bài viết được chia thành các phần sau.

Thư viện C# OCR - Tải xuống miễn phí

Aspose.OCR cho .NET là thư viện OCR mạnh mẽ và tốc độ cao dành cho C# cho phép bạn quét và chuyển đổi hình ảnh thành văn bản khá dễ dàng. Nó không yêu cầu các mã dài dòng để thiết lập và chạy các tính năng OCR trong các ứng dụng .NET của bạn. Sau đây là các phương pháp cài đặt thư viện C# OCR.

Cài đặt Thư viện C# .NET OCR qua Trình quản lý gói NuGet

Chỉ cần tìm kiếm Aspose.OCR trong Trình quản lý gói NuGet và cài đặt nó.

Thư viện C# OCR

Cài đặt Thư viện C# OCR qua Bảng điều khiển quản lý gói

Sau đây là lệnh cài đặt Aspose.OCR thông qua Package Manager Console.

PM> Install-Package Aspose.OCR

Chuyển đổi hình ảnh thành văn bản bằng thư viện C# OCR

Hãy xem cách thực hiện OCR trên một hình ảnh có thể là một trang của tài liệu được quét. Sau đây là các bước để thực hiện thao tác này.

  • Tạo một thể hiện của lớp AsposeOcr.
  • Gọi phương thức AsposeOcr.RecognizeImage(string) bằng cách chuyển đường dẫn của hình ảnh và nhận kết quả vào một đối tượng chuỗi.

Mẫu mã sau đây cho biết cách chuyển đổi hình ảnh thành văn bản bằng C#.

// Để biết các ví dụ và tệp dữ liệu đầy đủ, vui lòng truy cập https://github.com/aspose-ocr/Aspose.OCR-for-.NET
// Đường dẫn đến thư mục tài liệu.
string dataDir = RunExamples.GetDataDir_OCR();

// Khởi tạo một phiên bản của AsposeOcr
AsposeOcr api = new AsposeOcr();

// Nhận dạng hình ảnh
string result = api.RecognizeImage(dataDir + "Sampleocr.bmp");

// Hiển thị văn bản được nhận dạng
Console.WriteLine(result);

C# Thực hiện OCR trên hình ảnh với một dòng văn bản

Trong ví dụ trước, chúng tôi đã thực hiện OCR trên hình ảnh chứa nhiều dòng văn bản. Tuy nhiên, có thể hình ảnh chỉ chứa một dòng văn bản. Trong những trường hợp như vậy, bạn có thể yêu cầu API chỉ nhận ra dòng đó. Sau đây là các bước để thực hiện chuyển đổi hình ảnh chứa văn bản một dòng trong C#.

  • Tạo một đối tượng thuộc lớp AsposeOcr.
  • Gọi phương thức AsposeOcr.RecognizeLine(string) và truyền cho nó đường dẫn của tệp hình ảnh.
  • Nhận kết quả vào một đối tượng chuỗi.

Mẫu mã sau đây cho biết cách thực hiện OCR và chuyển đổi hình ảnh chứa một dòng văn bản bằng C#.

// Để biết các ví dụ và tệp dữ liệu đầy đủ, vui lòng truy cập https://github.com/aspose-ocr/Aspose.OCR-for-.NET
// Đường dẫn đến thư mục tài liệu.
string dataDir = RunExamples.GetDataDir_OCR();

// Khởi tạo một phiên bản của AsposeOcr
AsposeOcr api = new AsposeOcr();

// Nhận dạng hình ảnh
string result = api.RecognizeLine(dataDir + "sample_line.png");

// Hiển thị văn bản được nhận dạng
Console.WriteLine(result);

Thực hiện OCR cho các ký tự không phải tiếng Anh

Aspose.OCR không giới hạn các tính năng OCR cho ngôn ngữ tiếng Anh và bạn cũng có thể nhận dạng ký tự của các ngôn ngữ khác. Quá trình nhận dạng và mã sẽ giữ nguyên bất kể ngôn ngữ của văn bản. Sau đây là tập hợp các ký tự có thể được nhận dạng bởi thư viện C# OCR của Aspose.

OCR cho các ký tự không phải tiếng Anh

Thư viện C# OCR - Nhận giấy phép miễn phí

Bạn có thể sử dụng Aspose.OCR mà không bị giới hạn đánh giá bằng cách yêu cầu [giấy phép tạm thời miễn phí][7].

Sự kết luận

Bài viết này trình bày cách thực hiện OCR và chuyển đổi hình ảnh thành văn bản theo chương trình trong C#. Bạn có thể nhận ra các ký tự trong hình ảnh chứa một hoặc nhiều dòng văn bản. Tìm hiểu thêm về thư viện C# OCR từ tài liệu.

Xem thêm