Dynamsoft Barcode Reader条码阅读器从文本识别到数据控制

从文本识别到数据控制

光学字符识别(OCR)可帮助用户从图像中捕获和识别文本信息。但是,基本的OCR技术无法满足日益增长的数据控制要求,这意味着在某些复杂的情况下,我们可能需要从指定区域提取关键数据。Dynamsoft开发了一些由Dynamsoft Label Recognition SDK支持的新提取技术来控制数据。让我们向您展示我们是如何做到的。

自动侦测

默认情况下,Dynamsoft标签识别SDK会自动检测文本区域,这意味着您将在一个结果中获取所有文本。当只有一条直线时,这很有用。对于这些情况,Dynamsoft标签识别提供了自动区域检测模式DLR_RPM_AUTO。

 

settings.regionPredetectionModes[0] = DLRRegionPredetectionMode::DLR_RPM_AUTO;

带状OCR

 

如果一个图像包含多个文本区域,则开发人员可以使用Dynamsoft标签识别功能为指定的文本区域运行区域OCR功能。在此示例中,我们将识别礼品卡背面的优惠券代码。

 

OCR礼品卡

如您所见,凭证代码固定在左下角。Dynamsoft Label Recognition提供了灵活的API,可帮助您指定单个区域以避免捕获不需要的文本。本文将向您展示如何在RuntimeSettings中使用referenceRegion和textArea来控制OCR结果。

    char error[512];

    DLRRuntimeSettings settings;
    dlr.GetRuntimeSettings(&settings);
    
    settings.referenceRegion= { { {0,0}, {20,0}, {20,100}, {0,100}}, 1 };
    settings.textArea = { { {0,80}, {20,80}, {20,100}, {0,100} } };
    dlr.UpdateRuntimeSettings(&settings, error, 512);

此功能基于百分比轴。{x1,y1},{x2,y2},{x3,y3},{x4,y4}是四个点,通常是从左上角到左下角顺时针输入。X和Y的取值范围是0到100,这意味着它位于x坐标的X%和y坐标的Y%处。

 

 

OCR百分比轴

在这种情况下,{0,0},{20,0},{20,100},{0,100}是用于确保参考区域的四个点。因此,我们在下面指出了特定区域。

OCR特定区域

无论图像如何缩放,该百分比区域都不会改变。这些自动批处理功能可帮助开发人员减少手工工作。例如,您可以使用模板来扫描大量表单。可以仅识别一张图像并将参考区域和文本区域另存为JSON文件模板。然后,您可以将此模板用于后续工作流程中的其他文档,以节省时间。

 

使用条形码

那么,您如何确定实现区域控制的确切百分比?当文本在条形码周围时,它将变得更加容易。如果大图像上的条形码很小,我们建议在预检测模式下使用RelativeBarcodeRegions参数以加快定位过程和识别精度。

借助Dynamsoft条形码阅读器SDK,开发人员可以快速解码条形码并存储结果。Dynamsoft标签识别提供了两个用于处理条形码结果的API:

RecognizeBasedOnDBRResultsByBuffer和RecognizeBasedOnDBRResultsByFile。

获得结果后,您还可以将条形码结果与OCR结果进行比较。

 

CLabelRecognition* recognizer = new CLabelRecognition();
recognizer->InitLicense("t0260NwAAAHV***************");
//Generate imageData from somewhere else
int errorCode = recognizer->RecognizeBasedOnDBRResultsByBuffer(imageData, "");
int errorCode = recognizer->RecognizeBasedOnDBRResultsByFile("C:\\Program Files (x86)\\Dynamsoft\\{Version number}\\Images\\Sample.png", "");
delete recognizer;

阅读具有特定背景颜色的文本

 

在我们的日常生活中,有大量带有丰富文本信息的彩色标签。一个日常用例示例是价格标签,其中文本位于黄色背景上。预处理背景区域可以节省识别时间。

 

阅读具有特定背景颜色的文本

假设您要指定用于区域检测的一组前景色和背景色。在这种情况下,我们建议使用ForeAndBackgroundColours参数定义前景色和背景色。

综上所述

Dynamsoft Label Recognition是文本识别SDK和数据控制工具。开发人员可以完全控制数据并提高识别准确性。了解有关定义多个参考区域和文本区域的更多详细信息。

 
posted @ 2021-01-26 14:25  roffey  阅读(320)  评论(0编辑  收藏  举报