gpt4 book ai didi

c# - 使用 Azure Read/OCR API 从 PDF 中提取复选框数据

转载 作者:行者123 更新时间:2023-12-02 08:33:27 29 4
gpt4 key购买 nike

我有 1000 个调查表格,我需要扫描这些表格,然后上传到我的 C# 系统,以便提取数据并将其输入数据库。调查混合了手写的 1) 文本框和 2) 复选框。我目前正在使用 Azure Read Api 来提取手写文本,该文本应该可以正常工作,例如下面的问题#4 返回“Python”和“编码”。

所以我的问题;任何 Azure API(读取或 OCR 等)是否能够让我提取标记了复选框的数据?例如请参阅下面的问题#1 - 我需要一个字符串来表示“不同意”,这对于任何 Azure API 都是可行的还是我需要寻找其他地方?如果是这样,我可以使用什么 API 或库来获取手写的复选框数据?

使用 iText7 或 IronOCR 的人可以告诉我这些库是否允许我提取下面的复选框数据?

调查示例:

enter image description here

最佳答案

这个问题的答案并不太简单,需要创建自定义代码以通过第三方库自行解析 PDF。

由于您的表单形状已知,因此您知道复选框的位置。您应该为页面上的每个复选框构建一个“复选框名称”和“复选框数据”的字典。数据对象可以是如下所示的对象:

public class CheckboxData {
public int startX { get; set; }
public int startY { get; set; }
public int endX { get; set; }
public int endY { get; set; }
public bool IsChecked { get; set; }
}

我建议使用IronOCRrasterize PDF 到图像。

使用您的图像,迭代复选框字典并使用边界点,逐个像素移动并获取像素的颜色。将颜色存储在列表中,然后获取复选框内所有像素的平均颜色。如果平均值高于确定是否已检查的阈值,请设置 IsChecked bool 值。

对于单选样式的复选框,您可能需要不同的数据对象并存储圆圈的中心像素。对于圆,您应该存储 centerX 和 centerY 以及圆的半径并使用 Bresenham Circle algorithm知道要检查周围的哪些像素。

下面是在 GIMP 中获取光标所在位置的像素坐标的示例。 Getting pixel coordinates of image file

关于c# - 使用 Azure Read/OCR API 从 PDF 中提取复选框数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58773712/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com