通用图像识别——百度API调用

基于python 2.7

'''
获取access_token
'''
import urllib, urllib2, sys
import ssl

# client_id 为官网获取的AK, client_secret 为官网获取的SK
host = 'https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&client_id=【官网获取的AK】&client_secret=【官网获取的SK】'
request = urllib2.Request(host)
request.add_header('Content-Type', 'application/json; charset=UTF-8')
response = urllib2.urlopen(request)
content = response.read()
if (content):
    print(content)
# 提取其中"access_token":"************",下面会用到

'''
通用物体和场景识别:批量识别文件夹下图片,并将识别结果写入本地txt文件
'''
import base64
import urllib
import urllib2
import os
import time

path = '本地图片保存目录'
request_url = "https://aip.baidubce.com/rest/2.0/image-classify/v2/advanced_general"
for i in os.listdir(path):
    if i.endswith('jpg'):
        # 二进制方式打开图片文件
        f = open(os.path.join(path, i), 'rb')
        img = base64.b64encode(f.read())
        
        params = {"image": img}
        params = urllib.urlencode(params)

        access_token = "************"  # 上面保存的
        request_url = request_url + "?access_token=" + access_token
        request = urllib2.Request(url=request_url, data=params)
        request.add_header('Content-Type', 'application/x-www-form-urlencoded')
        response = urllib2.urlopen(request)
        content = response.read()
        if content:
            f = open('本地txt文件path', 'a+')
            f.write(i+'\n'+content+'\n')
            f.close()
            print(i+'\n'+content+'\n')
        # os.remove(os.path.join(path, i))  #删除本地已识别过的图片,慎选
        time.sleep(2)  # 免费版批量调用不保证并发量

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 6
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值