文字识别入门

我怕爱的太早我们不能终老 提交于 2019-11-26 16:35:41

1.注册百度账号,获取文字识别API,创建自己的应用

点击创建应用,最主要的参数是API Key和Secret Key。

有了这些就可以进一步去看百度提供的SDK文档了。
这是相关SDK地址:http://ai.baidu.com/sdk

2.创建VS控制台应用程序,引入 DLL
创建控制台应用程序,再Nuget中搜索Baidu.AI安装即可

3.编写代码

using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Recognition
{
    class Program
    {
        static void Main(string[] args)
        {
            //设置AK/SK
            var API_KEY = "qrLoluadLuXsdIs5EVxkw3GG";
            var SECRET_KEY = "1HC9X5svB4BThVHuH3ddrdoyt2kt8vr6";

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

            var image = File.ReadAllBytes("C:\\work\\pictures\\cpit.jpg"); 
            // 调用通用文字识别, 图片参数为本地图片,可能会抛出网络等异常,请使用try/catch捕获

            var url = "http://www.cpitone.com/upload/images/2019/4/1af464e9ef7c3fdc.jpg"; 

            try
            {
                var result = client.GeneralBasic(image); //本地图片
                //var result = client.GeneralBasicUrl(url); //网络图片
                //var result = client.Accurate(image); //本地图片:相对于通用文字识别该产品精度更高,但是识别耗时会稍长。

                //var result = client.General(image); //本地图片:通用文字识别(含位置信息版)
                //var result = client.GeneralUrl(url); //网络图片:通用文字识别(含位置信息版)

                //var result = client.GeneralEnhanced(image); //本地图片:调用通用文字识别(含生僻字版)
                //var result = client.GeneralEnhancedUrl(url); //网络图片:调用通用文字识别(含生僻字版)

                //var result = client.WebImage(image); //本地图片:用户向服务请求识别一些背景复杂,特殊字体的文字。
                //var result = client.WebImageUrl(url); //网络图片:用户向服务请求识别一些背景复杂,特殊字体的文字。

                Console.WriteLine(result);
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
                throw;
            }
        }
    }
}

要识别的图片:

识别出来的文字:

4.具体业务使用可以看使用场景来调用不同的接口,这是一个简单的识别,可以针对不能赋值、文字繁多、不认识的字都可以做一个简单的文字识别。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!