Aspose.OCR for .NET
用於光學字元辨識操作的領先 .NET OCR API
用於在 C# 應用程式中新增光學字元辨識 (OCR) 功能的頂級 .NET API。它允許將列印或手寫文字轉換為數字格式。
光學字元辨識 (OCR) 是將文字影像以及列印文件轉換為機器可讀文字格式的非常有用的過程。 Aspose.OCR for .NET 是一個先進的 OCR 庫,使軟體開發人員可以輕鬆地將列印以及手寫文件或文字轉換為數位格式,從而更輕鬆地搜尋、編輯和與其他使用者共用。 C# .NET 函式庫包含一個強大的影像讀取器,可以讀取各種流行的影像檔案格式,例如 JPEG、PNG、TIFF、GIF、BMP 影像、PDF 文件、TIFF、DjVu 等。軟體開發人員還可以將識別結果儲存為最受歡迎的文件和資料交換格式。
Aspose.OCR for .NET 是市場上領先的 OCR 庫之一,它使軟體開發人員能夠將 OCR 功能添加到其 .NET 應用程式中,而無需任何外部依賴項。該庫使用先進的演算法來識別掃描文件、圖像、手寫文本、智慧型手機照片、螢幕截圖、圖像特定區域和其他來源中的文本,然後輕鬆將其轉換為可編輯文字。支援英語、中文、韓語、西班牙語、法語、德語、義大利語、保加利亞語、哈薩克語、俄語、日語、阿拉伯語等超過26種語言。
Aspose.OCR for .NET 非常穩定,並且包含一個非常有用的條碼識別功能,允許軟體開發人員識別流行的條碼格式,例如 QR 代碼和 UPC 代碼。該庫包含一些強大的預處理過濾器,使程式設計師只需幾行 C# 程式碼即可識別旋轉、傾斜和雜訊影像。此外,它可以輕鬆地與其他Aspose庫集成,例如Aspose.PDF和Aspose.Words,允許開發人員創建強大的文件處理工作流程。識別作為網頁連結提供的圖像並對資料夾或存檔中的所有圖像進行批量識別也非常容易。
開始使用 Aspose.OCR for .NET
安裝 Aspose.OCR for .NET 的建議方法是使用 NuGet。為了順利安裝,請使用以下命令。
透過 C# 偵測影像的特定區域
Aspose.OCR for .NET 提供了偵測 .NET 應用程式內影像中特定區域的功能。 掃描的文字影像或照片可能包含文字段落、表格、插圖、公式等。 檢測、排序和分類頁面上感興趣的區域是成功且準確的 OCR 的基石。為了實現該任務,庫中有多個文件區域檢測演算法,可協助軟體開發人員偵測特定類型的內容。以下示範如何使用 C# 命令載入影像並偵測特定區域以進行文字辨識。
如何透過 C# API 載入影像並偵測特定影像區域?Aspose.OCR.AsposeOcr recognitionEngine = new Aspose.OCR.AsposeOcr();
// Add an image to OcrInput object
Aspose.OCR.OcrInput input = new Aspose.OCR.OcrInput(Aspose.OCR.InputType.SingleImage);
input.Add("source.png");
// Set document areas detection mode
Aspose.OCR.RecognitionSettings recognitionSettings = new Aspose.OCR.RecognitionSettings();
recognitionSettings.DetectAreasMode = Aspose.OCR.DetectAreasMode.DOCUMENT;
// Recognize image
List results = recognitionEngine.Recognize(input, recognitionSettings);
foreach(Aspose.OCR.RecognitionResult result in results)
{
Console.WriteLine(result.RecognitionText);
}
Aspose.OCR.AsposeOcr recognitionEngine = new Aspose.OCR.AsposeOcr();
// Add an image to OcrInput object
Aspose.OCR.OcrInput input = new Aspose.OCR.OcrInput(Aspose.OCR.InputType.SingleImage);
input.Add("source.png");
// Set document areas detection mode
Aspose.OCR.RecognitionSettings recognitionSettings = new Aspose.OCR.RecognitionSettings();
recognitionSettings.DetectAreasMode = Aspose.OCR.DetectAreasMode.DOCUMENT;
// Recognize image
List results = recognitionEngine.Recognize(input, recognitionSettings);
foreach(Aspose.OCR.RecognitionResult result in results)
{
Console.WriteLine(result.RecognitionText);
}
透過 .NET API 處理影像
Aspose.OCR for .NET 允許軟體開發人員在自己的 .NET 應用程式中對影像執行不同類型的操作。此庫包含幾個全自動和手動影像處理濾鏡,可協助使用者在執行OCR 操作之前增強影像,例如傾斜校正、旋轉、雜訊消除、對比度校正、調整大小、二值化、轉換為灰階、色彩反轉、膨脹、中值濾波器等等。您還可以使用許多其他選項和設定來自訂 OCR 流程。為了提高影像辨識質量,開發人員可以應用多個處理濾鏡。開發人員可以輕鬆地將大量濾鏡套用到影像的特定區域。
使用 C# .NET API 對影像套用濾鏡
Aspose.Drawing.Rectangle blackRectangle = new Aspose.Drawing.Rectangle(5, 161, 340, 113);
Aspose.OCR.Models.PreprocessingFilters.PreprocessingFilter filters = new Aspose.OCR.Models.PreprocessingFilters.PreprocessingFilter();
// (1) Invert black region
filters.Add(Aspose.OCR.Models.PreprocessingFilters.PreprocessingFilter.Invert(blackRectangle));
// (2) Denoise entire image
filters.Add(Aspose.OCR.Models.PreprocessingFilters.PreprocessingFilter.AutoDenoising());
透過 .NET API 進行影像中的文字比較
Aspose.OCR for .NET 讓軟體開發人員能夠在自己的 C# 應用程式中比較兩個影像上的文字。 該庫可以比較兩個圖像上的文本,無論字體、文字大小、大小寫、樣式和顏色如何。 比較圖像文本的一種方法是從圖像中提取文本,從圖像中提取文本後,您可以使用任何文本比較演算法來比較它們。 Aspose.OCR for .NET 提供了一種使用 String.Equals 方法比較兩個字串的簡單方法。以下範例示範如何使用 C# 程式碼比較兩個圖像中的文字。
如何使用 .NET API 比較兩個影像中的文字?
using System;
using Aspose.OCR;
using System.Drawing;
class Program
{
static void Main()
{
// Load the images
var image1 = Image.FromFile("image1.png");
var image2 = Image.FromFile("image2.png");
// Extract text from the images
var ocrEngine = new OcrEngine();
ocrEngine.Image = ImageStream.FromImage(image1);
ocrEngine.Process();
var text1 = ocrEngine.Text;
ocrEngine.Image = ImageStream.FromImage(image2);
ocrEngine.Process();
var text2 = ocrEngine.Text;
// Compare the extracted text
var areEqual = string.Equals(text1, text2, StringComparison.OrdinalIgnoreCase);
Console.WriteLine("Are the texts equal? " + areEqual);
}
}
//Note that the above code only works for exact text matches.
using System;
using Aspose.OCR;
using System.Drawing;
class Program
{
static void Main()
{
// Load the images
var image1 = Image.FromFile("image1.png");
var image2 = Image.FromFile("image2.png");
// Extract text from the images
var ocrEngine = new OcrEngine();
ocrEngine.Image = ImageStream.FromImage(image1);
ocrEngine.Process();
var text1 = ocrEngine.Text;
ocrEngine.Image = ImageStream.FromImage(image2);
ocrEngine.Process();
var text2 = ocrEngine.Text;
// Compare the extracted text
var areEqual = string.Equals(text1, text2, StringComparison.OrdinalIgnoreCase);
Console.WriteLine("Are the texts equal? " + areEqual);
}
}
//Note that the above code only works for exact text matches.
使用 C# API 搜尋影像中的文字
Aspose.OCR for .NET 讓軟體開發人員可以輕鬆地在自己的 .NET 應用程式中尋找圖像中的文字。該庫提供了對圖像中搜尋文字的支持,就像在字串中尋找文字片段一樣簡單。該庫支援搜尋區分大小寫或不區分大小寫的字串,甚至根據模式驗證圖像文字。軟體開發人員只需幾行 C# 程式碼即可使用 ImageHasText 方法搜尋圖像內的文字。 以下範例示範如何載入圖像並蒐索其中的特定文字。
如何透過.NET在圖像中尋找文字?Aspose.OCR.AsposeOcr recognitionEngine = new Aspose.OCR.AsposeOcr();
Aspose.OCR.RecognitionSettings recognitionSettings = new Aspose.OCR.RecognitionSettings();
recognitionSettings.Language = Aspose.OCR.Language.Ukr;
if(recognitionEngine.ImageHasText("source.png", "Aspose", recognitionSettings))
{
Console.WriteLine(@"The image contains the word ""Aspose""");
}
else
{
Console.WriteLine(@"The image doesn't contain the word ""Aspose""");
}
Aspose.OCR.AsposeOcr recognitionEngine = new Aspose.OCR.AsposeOcr();
Aspose.OCR.RecognitionSettings recognitionSettings = new Aspose.OCR.RecognitionSettings();
recognitionSettings.Language = Aspose.OCR.Language.Ukr;
if(recognitionEngine.ImageHasText("source.png", "Aspose", recognitionSettings))
{
Console.WriteLine(@"The image contains the word ""Aspose""");
}
else
{
Console.WriteLine(@"The image doesn't contain the word ""Aspose""");
}