首页 基于百度智能云搭建自己的图片OCR服务
文章
取消

基于百度智能云搭建自己的图片OCR服务

步骤

  1. 进入百度智能云文字识别服务
  2. 免费尝鲜:点击“去领取”,领取需要的OCR服务。
  3. 创建应用:点击“去创建”,创建服务。
  4. 在应用列表中,可以看到对应的 API Key 和 Secret Key。
  5. 文档中心查阅服务如何使用,例如通用文字识别标准版的文档
  6. 可以点击文档内的“示例代码中心”,代码会自动生成以供测试。

代码

通用文字识别的代码示例:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
import base64
import urllib
import requests
import argparse

parser = argparse.ArgumentParser()
parser.add_argument("--path", type=str, default="", help="图片路径")
args = parser.parse_args()

API_KEY = "你自己的"
SECRET_KEY = "你自己的"
PATH = args.path

def main():
        
    url = "https://aip.baidubce.com/rest/2.0/ocr/v1/general_basic?access_token=" + get_access_token()
    
    payload = 'image=' + get_file_content_as_base64(PATH,True)
    headers = {
        'Content-Type': 'application/x-www-form-urlencoded',
        'Accept': 'application/json'
    }
    
    response = requests.request("POST", url, headers=headers, data=payload)
    

    # 如果 response 中存在 error_msg 字段,说明发生了错误
    if "error_msg" in response.text:
        print("错误信息:" + response.text)
    else:
        # 打印识别结果
        for item in response.json().get("words_result"):
            print(item.get("words"))
    

def get_file_content_as_base64(path, urlencoded=False):
    """
    获取文件base64编码
    :param path: 文件路径
    :param urlencoded: 是否对结果进行urlencoded 
    :return: base64编码信息
    """
    with open(path, "rb") as f:
        content = base64.b64encode(f.read()).decode("utf8")
        if urlencoded:
            content = urllib.parse.quote_plus(content)
    return content

def get_access_token():
    """
    使用 AK,SK 生成鉴权签名(Access Token)
    :return: access_token,或是None(如果错误)
    """
    url = "https://aip.baidubce.com/oauth/2.0/token"
    params = {"grant_type": "client_credentials", "client_id": API_KEY, "client_secret": SECRET_KEY}
    return str(requests.post(url, params=params).json().get("access_token"))

if __name__ == '__main__':
    main()

使用

这样就可以在命令行中使用:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
PS C:\Users\15951> python "D:\SoftWare\myApp\ocr.py" --path "C:\Users\15951\Pictures\Screenshots\屏幕截图 2024-01-13 184842.png"
GitHub Commit Activity Analysis:Trends and Patterns
from 2020 to 2023
January 13,2024
Abstract
本报告通过对2020年至2023年间GitHub上的提交活动进行深入分析,探讨了开源
软件仓库的发展趋势和特点。使用了多种工具和技术,包括libest和pysnooper,来分析
提交频率、贡献者变化和代码活动的高峰期。报告的发现揭示了开源项目活动的季节性
模式,贡献者数量的增长,以及项目活动的关键驱动因素。
1引言
在引言中,阐明开源项目如何成为软件发展的关键组成部分,以及对开源项目的定期分析如
何帮助理解协作模式、项目生命周期和软件发展动态。明确指出,此次研究旨在通过历史数
据来识别和解释开源项目提交活动的统计规律和特点。
2需求分析
选取软件点云标注labelCloud作为要分析的开源软件连接:https:/github.com/ch-sa/1 abelCloud
本文由作者按照 CC BY 4.0 进行授权

SSDUT企业行:迪普科技

我想玩碧蓝档案!但啥是adb?