如何在使用 Aspose.OCR 的图像中识别手写文本
如何在使用 Aspose.OCR 的图像中识别手写文本
手写笔记、表格输入和签名在商业、医疗保健和教育方面到处都是。手稿翻译是缓慢、不一致的,是数字化的瓶子标志. .NET 的 ASPOSE.OCR 支持从图像和扫描中直接识别书面文本 - 自动登录、审计和工作流集成。
现实世界问题
关于纸质表格、处方、合同和笔记本的关键信息往往只存在于手写的形式。 通过手输入这些数据是无聊的、有错误的,而且在规模上是昂贵的。
解决方案概述
Aspose.OCR for .NET 提供手写识别功能,允许开发人员从图像和表格中提取手稿内容,适合数字存档、审计轨道、医疗保健和客户登机。
原則
- Visual Studio 2019 或以后
- .NET 6.0 或更高版本(或 .Net Framework 4.6.2+)
- Aspose.OCR 为 .NET 从 NuGet
- 基本的C#技能
PM> Install-Package Aspose.OCR
步骤实施
步骤 1: 安装和设置 Aspose.OCR
using Aspose.OCR;
步骤2:扫描或拍摄手写文件
OcrInput input = new OcrInput(InputType.SingleImage);
input.Add("handwritten_note.jpg");
input.Add("signed_form.png");
步骤3:设置识别为手写
RecognitionSettings settings = new RecognitionSettings();
settings.Language = Language.English; // Or match handwriting language
settings.DetectAreasMode = DetectAreasMode.HANDWRITING; // Important for handwritten text
步骤4:提取手写文本
AsposeOcr ocr = new AsposeOcr();
List<RecognitionResult> results = ocr.Recognize(input, settings);
步骤5:出口或验证认可内容
foreach (RecognitionResult result in results)
{
Console.WriteLine(result.RecognitionText);
result.Save("handwritten_output.txt", SaveFormat.Text);
}
步骤6:添加错误处理和手动评论
try
{
AsposeOcr ocr = new AsposeOcr();
List<RecognitionResult> results = ocr.Recognize(input, settings);
// Post-process or review results
}
catch (Exception ex)
{
Console.WriteLine($"Error: {ex.Message}");
}
步骤7:优化手写风格和质量
- 使用高分辨率扫描,以获得最佳准确性
- 提前处理(de-skew,增强对比)为弱或无情的手写
- 测试您的典型用户的样本手稿
foreach (string file in Directory.GetFiles("./handwritten_samples", "*.jpg"))
{
input.Add(file);
}
步骤8:完整的例子
using Aspose.OCR;
using System;
using System.Collections.Generic;
class Program
{
static void Main(string[] args)
{
try
{
OcrInput input = new OcrInput(InputType.SingleImage);
input.Add("handwritten_note.jpg");
input.Add("signed_form.png");
RecognitionSettings settings = new RecognitionSettings();
settings.Language = Language.English;
settings.DetectAreasMode = DetectAreasMode.HANDWRITING;
AsposeOcr ocr = new AsposeOcr();
List<RecognitionResult> results = ocr.Recognize(input, settings);
foreach (RecognitionResult result in results)
{
Console.WriteLine(result.RecognitionText);
result.Save("handwritten_output.txt", SaveFormat.Text);
}
}
catch (Exception ex)
{
Console.WriteLine($"Error: {ex.Message}");
}
}
}
使用案例和应用程序
医疗保健和处方
数字化手写的医学记录和检查和搜索的处方。
银行和客户登机
提取签名和填写表格字段,以打开帐户,遵守,或贷款处理。
教育与研究
数字化手写的笔记,测试,或历史文件的档案或等级。
共同挑战与解决方案
挑战1:不一致的手写
** 解决方案:** 鼓励手写的最佳做法;预处理图像为清晰度。
挑战2:低分辨率或噪音扫描
** 解決方案:** 在 300 DPI+ 上檢查並在處理前解除圖像。
挑战3:混合印刷和手写内容
** 解决方案:** 使用 DetectAreasMode.AUTO 或测试两种模式以优化提取。
绩效考虑
- 使用优质、清洁的扫描
- 尺寸的Batch过程
- 在可能的情况下通过人类审查进行验证
最佳实践
- 通过手动点检查验证输出
- Tune DetectAreasMode 为您的典型文档类型
- 安全敏感手写数据
- 定期更新 Aspose.OCR 以获得最佳结果
先进的场景
场景1:向结构化数据出口
foreach (RecognitionResult result in results)
{
result.Save("handwritten_output.json", SaveFormat.Json);
}
场景2:混合格式的包装过程
RecognitionSettings settings = new RecognitionSettings();
settings.DetectAreasMode = DetectAreasMode.AUTO; // For forms with both types
结论
Aspose.OCR for .NET 可强大的手写文本、签名和笔记提取,可帮助您自信地数字化、审计和自动化工作流。
对于最新手写识别功能,请参见 ASPOSE.OCR 为 .NET API 参考 .