Loading
0

C# 百度Ai调用文字识别SDK文档

技术小学生微信公众号
腾讯云服务器大促销。
华为服务器

C# SDK文档

简介

Hi,您好,欢迎使用百度文字识别服务。

本文档主要针对C#开发者,描述百度文字识别接口服务的相关技术内容。如果您对文档内容有任何疑问,可以通过以下几种方式联系我们:

  • 在百度云控制台内提交工单,咨询问题类型请选择人工智能服务
  • 如有疑问,进入AI社区交流:http://ai.baidu.com/forum/topic/list/164

接口能力

接口名称 接口能力简要描述
通用文字识别 识别图片中的文字信息
通用文字识别(高精度版) 更高精度地识别图片中的文字信息
通用文字识别(含位置信息版) 识别图片中的文字信息(包含文字区域的坐标信息)
通用文字识别(高精度含位置版) 更高精度地识别图片中的文字信息(包含文字区域的坐标信息)
通用文字识别(含生僻字版) 识别图片中的文字信息(包含对常见字和生僻字的识别)
网络图片文字识别 识别一些网络上背景复杂,特殊字体的文字
身份证识别 识别身份证正反面的文字信息
银行卡识别 识别银行卡的卡号并返回发卡行和卡片性质信息
驾驶证识别 识别机动车驾驶证所有关键字段
行驶证识别 识别机动车行驶证所有关键字段
车牌识别 对小客车的车牌进行识别
营业执照识别 对营业执照进行识别
表格文字识别 自动识别表格线及表格内容,结构化输出表头、表尾及每个单元格的文字内容
通用票据识别 对各类票据图片(医疗票据,保险保单等)进行文字识别,并返回文字在图片中的位置信息

版本更新记录

上线日期 版本号 更新内容
2018.4.2 3.4.0 新增.Net Core支持;新增表格识别同步接口
2018.1.11 3.3.1 新增自定义文字识别接口
2017.12.21 3.3.0 接口升级
2017.9.12 3.0.0 更新SDK打包方式:所有AI服务集成一个SDK
2017.8.24 1.6.0 OCR 新增营业执照识别
2017.8.11 1.5.0 OCR 新增通用票据识别
2017.7.28 1.4.0 OCR 新增图片url识别;新增高精度文字识别
2017.7.13 1.3.0 OCR加入车牌识别;Bug fix
2017.6.30 1.2.0 OCR加入表格识别
2017.6.16 1.1.0 新增驾驶证、行驶证识别接口
2017.5.4 1.0.0 第一版!

快速入门

安装文字识别 C# SDK

C# SDK 现已开源! https://github.com/Baidu-AIP/dotnet-sdk

** 支持平台:.Net Framework 3.5 4.0 4.5, .Net Core 2.0 **

方法一:使用Nuget管理依赖 (推荐)

在NuGet中搜索 Baidu.AI,安装最新版即可。

packet地址 https://www.nuget.org/packages/Baidu.AI/

方法二:下载安装

文字识别 C# SDK目录结构

Baidu.Aip
    ├── net35
       ├── AipSdk.dll             // 百度AI服务 windows 动态库
       ├── AipSdk.xml             // 注释文件
       └── Newtonsoft.Json.dll    // 第三方依赖
    ├── net40
    ├── net45
    └── netstandard2.0
        ├── AipSdk.deps.json
        └── AipSdk.dll

如果需要在 Unity 平台使用,可引用工程源码自行编译。

安装

1.在官方网站下载C# SDK压缩工具包。

2.解压后,将 AipSdk.dllNewtonsoft.Json.dll 中添加为引用。

新建交互类

Baidu.Aip.Ocr.Ocr是文字识别的交互类,为使用文字识别的开发人员提供了一系列的交互方法。

用户可以参考如下代码新建一个交互类:

// 设置APPID/AK/SK
var APP_ID = "你的 App ID";
var API_KEY = "你的 Api Key";
var SECRET_KEY = "你的 Secret Key";

var client = new Baidu.Aip.Ocr.Ocr(API_KEY, SECRET_KEY);
client.Timeout = 60000;  // 修改超时时间
 

在上面代码中,常量APP_ID在百度云控制台中创建,常量API_KEYSECRET_KEY是在创建完毕应用后,系统分配给用户的,均为字符串,用于标识用户,为访问做签名验证,可在AI服务控制台中的应用列表中查看。

注意:如您以前是百度云的老用户,其中API_KEY对应百度云的“Access Key ID”,SECRET_KEY对应百度云的“Access Key Secret”。

接口说明

通用文字识别

用户向服务请求识别某张图中的所有文字

public void GeneralBasicDemo() {
	var image = File.ReadAllBytes("图片文件路径");
	// 调用通用文字识别, 图片参数为本地图片,可能会抛出网络等异常,请使用try/catch捕获
	var result = client.GeneralBasic(image);
	Console.WriteLine(result);
	// 如果有可选参数
	var options = new Dictionary<string, object>{
	    {"language_type", "CHN_ENG"},
	    {"detect_direction", "true"},
	    {"detect_language", "true"},
	    {"probability", "true"}
	};
	// 带参数调用通用文字识别, 图片参数为本地图片
	result = client.GeneralBasic(image, options);
	Console.WriteLine(result);
}
public void GeneralBasicUrlDemo() {
	var url = "https//www.x.com/sample.jpg";
	
	// 调用通用文字识别, 图片参数为远程url图片,可能会抛出网络等异常,请使用try/catch捕获
	var result = client.GeneralBasicUrl(url);
	Console.WriteLine(result);
	// 如果有可选参数
	var options = new Dictionary<string, object>{
	    {"language_type", "CHN_ENG"},
	    {"detect_direction", "true"},
	    {"detect_language", "true"},
	    {"probability", "true"}
	};
	// 带参数调用通用文字识别, 图片参数为远程url图片
	result = client.GeneralBasicUrl(url, options);
	Console.WriteLine(result);
}
 

通用文字识别 请求参数详情

参数名称 是否必选 类型 可选值范围 默认值 说明
image byte[]     二进制图像数据
url string     图片完整URL,URL长度不超过1024字节,URL对应的图片base64编码后大小不超过4M,最短边至少15px,最长边最大4096px,支持jpg/png/bmp格式,当image字段存在时url字段失效
language_type string CHN_ENG
ENG
POR
FRE
GER
ITA
SPA
RUS
JAP
KOR
CHN_ENG 识别语言类型,默认为CHN_ENG。可选值包括:
– CHN_ENG:中英文混合;
– ENG:英文;
– POR:葡萄牙语;
– FRE:法语;
– GER:德语;
– ITA:意大利语;
– SPA:西班牙语;
– RUS:俄语;
– JAP:日语;
– KOR:韩语;
detect_direction string true
false
false 是否检测图像朝向,默认不检测,即:false。朝向是指输入图像是正常方向、逆时针旋转90/180/270度。可选值包括:
– true:检测朝向;
– false:不检测朝向。
detect_language string true
false
false 是否检测语言,默认不检测。当前支持(中文、英语、日语、韩语)
probability string true
false
  是否返回识别结果中每一行的置信度

通用文字识别 返回数据参数详情

字段 必选 类型 说明
direction number 图像方向,当detect_direction=true时存在。
– -1:未定义,
– 0:正向,
– 1: 逆时针90度,
– 2:逆时针180度,
– 3:逆时针270度
log_id number 唯一的log id,用于问题定位
words_result_num number 识别结果数,表示words_result的元素个数
words_result array 定位和识别结果数组
+words string 识别结果字符串
probability object 行置信度信息;如果输入参数 probability = true 则输出
+average number 行置信度平均值
+variance number 行置信度方差
+min number 行置信度最小值

通用文字识别 返回示例

{
"log_id": 2471272194,
"words_result_num": 2,
"words_result":
    [
        {"words": " TSINGTAO"},
        {"words": "青島睥酒"}
    ]
}
技术小学生微信公众号
华为服务器
腾讯云服务器大促销。

声明:站长码字很辛苦啊,转载时请保留本声明及附带文章链接:https://blog.tag.gg/showinfo-23-359-0.html
亲爱的:若该文章解决了您的问题,可否收藏+评论+分享呢?
上一篇:C#打开对话框OpenFileDialog控件常用的3种方法
下一篇:C#中Form2窗体调用Form1窗体中的空间值(窗体之间传递值方法)