zoukankan      html  css  js  c++  java
  • 调用百度ocr的API,python简易版本

    调用百度ocr的API,python简易版本

    https://www.jianshu.com/p/e10dc43c38d0

    1. 注册

    百度云注册账号 https://cloud.baidu.com/?from=console
    管理应用 https://console.bce.baidu.com/ai/#/ai/ocr/overview/index 创建一个

     
    图1登陆之后的界面

    进入链接之后创建应用,由于是从文字识别点进去的,所以默认选中的就是ocr相关内容,填好表格确认。
     
    图2 创建应用之后的界面

    有了这三个东西,AppID 、API Key、Secret Key,我们就可以在代码里调用接口了。

    2. 调用API

    官方指南:https://ai.baidu.com/docs#/OCR-Python-SDK/top
    安装使用Python SDK: pip install baidu-aip
    cv2 需要安装:pip install opencv_python
    如果只需要预测文字以及框出文字区域,执行以下代码即可。

    import cv2
    from aip import AipOcr
    
    """ 你的 APPID AK SK  图2的内容"""
    APP_ID = '14318340'
    API_KEY = 'DUvK5jEkNmCIEz4cXH8VvIVC'
    SECRET_KEY = '*******'
    
    client = AipOcr(APP_ID, API_KEY, SECRET_KEY)
    
    fname = 'picture/test4.jpg'
    
    """ 读取图片 """
    def get_file_content(filePath):
        with open(filePath, 'rb') as fp:
            return fp.read()
    
    image = get_file_content(fname)
    
    """ 调用通用文字识别, 图片参数为本地图片 """
    results = client.general(image)["words_result"]  # 还可以使用身份证驾驶证模板,直接得到字典对应所需字段
    
    img = cv2.imread(fname)
    for result in results:
        text = result["words"]
        location = result["location"]
    
        print(text)
        # 画矩形框
        cv2.rectangle(img, (location["left"],location["top"]), (location["left"]+location["width"],location["top"]+location["height"]), (0,255,0), 2)
    
    cv2.imwrite(fname[:-4]+"_result.jpg", img)
    
    

    斜一定角度也能检测出来 还不错


     
    效果图
     
     
  • 相关阅读:
    map映射的用法
    相似的字串(hash+二分)
    进制 /字符串 hash
    CF#632 C.Eugene and an array
    2020牛客寒假算法基础集训营6 H-云
    Educational Codeforces Round 80 (Div. 2)
    Codeforces Round #601 (Div. 2)补题
    luogu-单调队列/单调栈专题
    Comet OJ
    Comet OJ
  • 原文地址:https://www.cnblogs.com/du-jun/p/11454956.html
Copyright © 2011-2022 走看看