百度智能云申请ak、sk,获取access_token,利用接口实现人脸识别、人脸检测(含使用示例、模板代码)

概要

百度智能云
百度智能云提供多种智能服务,通过接口,我们可以利用这些功能实现很多操作。本文以人脸识别为例,详细教大家怎么使用。
百度智能云,以下是百度智能云的部分功能。
在这里插入图片描述

人脸识别云服务

包含实名认证、人脸对比、人脸搜索、活体检测等能力。灵活应用于金融、泛安防等行业场景,满足身份核验、人脸考勤、闸机通行等业务需求。
人脸识别云服务
在这里插入图片描述

免费尝鲜

领取资源供您测试
首先先领取资源,这个操作很简单,直接上图。为了方便,直接全部领取就好了,只需要领取免费的就好,这已经提供很多服务了,是足够我们使用的。
在这里插入图片描述
在这里插入图片描述

创建应用

创建应用,获取ak/sk
这里也很简单,填写应用名称,接口选择默认就可以了,应用归属个人,填写应用描述,这就完成了。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述在这里插入图片描述
点击返回应用列表就可以看到我们创建的应用了,这里的ak、sk就是我们需要的,它可以帮助我们获取access_tacken。

调用服务

查看请求示例,调用服务
接下来就可以调用接口使用服务了。
接口能力

  • 人脸检测:检测图片中的人脸并标记出位置信息。
  • 人脸关键点:展示人脸的核心关键点信息,及150个关键点信息。
  • 人脸属性值:展示人脸属性信息,如年龄、性别等。
  • 人脸质量信息:返回人脸各部分的遮挡、光照、模糊、完整度、置信度等信息。

业务应用
典型应用场景:如人脸属性分析,基于人脸关键点的加工分析,人脸营销活动等。
说明:检测响应速度,与图片中人脸数量相关,人脸数量较多时响应时间会有些许延长。

在线调试
我们可以在 示例代码中心 中调试该接口,可进行签名验证、查看在线调用的请求内容和返回结果、示例代码的自动生成。

调用方式
请求URL数据格式:向API服务地址使用POST发送请求,必须在URL中带上参数access_token,可通过后台的API Key和Secret Key生成,具体方式请参考Access Token获取

例如此接口,使用HTTPS POST发送:

https://aip.baidubce.com/rest/2.0/face/v3/detect?access_token=24.f9ba9c5341b67688ab4added8bc91dec.2592000.1485570332.282335-8574074

示例代码:通过这个代码,我们可以获取“Access Token

 # encoding:utf-8
import requests 

# 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】'
response = requests.get(host)
if response:
    print(response.json()['access_token'])

注意:access_token的有效期为30天,切记需要每30天进行定期更换,或者每次请求都拉取新token

请求示例:

  • HTTP方法:POST
  • 请求URL: https://aip.baidubce.com/rest/2.0/face/v3/detect
  • URL参数:access_token
  • 参数值:通过API Key和Secret Key获取的access_token,参考“Access Token获取”
  • Header参数: Content-Type
  • 参数值:application/json
  • Body中放置请求参数,参数详情如下:
    在这里插入图片描述
    在这里插入图片描述

请求说明

  • 请求体格式化:Content-Type为application/json,通过json格式化请求体。
  • Base64编码:请求的图片需经过Base64编码,图片的base64编码指将图片数据编码成一串字符* 串,使用该字符串代替图像地址。您可以首先得到图片的二进制,然后用Base64格式编码即可。需要注意的是,图片的base64编码是不包含图片头的,如data:image/jpg;base64,
  • 图片格式:现支持PNG、JPG、JPEG、BMP,不支持GIF图片
  • 人脸识别接口分为V2和V3两个版本,本文档为V3版本接口的说明文档,请确认您在百度智能云后台获得的是V3版本接口权限,再来阅读本文档。

辨别接口版本的方法是:在百度智能云后台进入【应用列表】,点击【应用名称】,在【API列表】中可以看到【请求地址】,若请求地址中带有【v3】标识,则您具有的是v3权限,可以阅读本文档;若请求地址中带有【v2】标识,则您具有的是v2权限,应该去阅读v2文档。

示例代码

  • 提示一:使用示例代码前,请记得替换其中的示例Token、图片地址或Base64信息。
  • 提示二:部分语言依赖的类或库,请在代码注释中查看下载地址。
# encoding:utf-8

import requests

'''
人脸检测与属性分析
'''

request_url = "https://aip.baidubce.com/rest/2.0/face/v3/detect"
access_token = '[调用鉴权接口获取的token]'
request_url = request_url + "?access_token=" + access_token

params = "{\"image\":\"027d8308a2ec665acb1bdf63e513bcb9\",\"image_type\":\"FACE_TOKEN\",\"face_field\":\"faceshape,facetype\"}"  # 图片地址、编码方式、人脸特征

headers = {'content-type': 'application/json'}

response = requests.post(request_url, data=params, headers=headers)
if response:
    print (response.json())

小结

详细内容请参考:
帮助文档>人脸识别 人脸检测

  • 6
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
百度智能提供了丰富的图像识别API,包括OCR文字识别和图像识别等。可以使用Python的requests库和百度智能提供的API接口进行图像识别。 具体步骤如下: 1. 在百度智能控制台创建应用,获取API Key和Secret Key。 2. 安装requests库,使用API Key和Secret Key生成Access Token。 3. 使用Access Token和API接口对图像进行识别,获取识别结果。 示例代码如下: ```python import requests import base64 # 获取Access Token def get_access_token(api_key, secret_key): url = 'https://aip.baidubce.com/oauth/2.0/token' params = { 'grant_type': 'client_credentials', 'client_id': api_key, 'client_secret': secret_key, } response = requests.post(url, params=params) if response: access_token = response.json()['access_token'] return access_token else: return None # OCR文字识别 def ocr_text_recognition(image_path, access_token): url = 'https://aip.baidubce.com/rest/2.0/ocr/v1/general_basic' with open(image_path, 'rb') as f: image_data = f.read() image_base64 = base64.b64encode(image_data).decode('utf-8') data = {'image': image_base64} headers = {'Content-Type': 'application/x-www-form-urlencoded'} params = {'access_token': access_token} response = requests.post(url, params=params, headers=headers, data=data) if response: result = response.json()['words_result'] return result else: return None # 物体识别 def object_detection(image_path, access_token): url = 'https://aip.baidubce.com/rest/2.0/image-classify/v2/advanced_general' with open(image_path, 'rb') as f: image_data = f.read() image_base64 = base64.b64encode(image_data).decode('utf-8') data = {'image': image_base64} headers = {'Content-Type': 'application/x-www-form-urlencoded'} params = {'access_token': access_token} response = requests.post(url, params=params, headers=headers, data=data) if response: result = response.json()['result'] return result else: return None if __name__ == '__main__': # 替换为自己的API Key和Secret Key api_key = 'your_api_key' secret_key = 'your_secret_key' # 获取Access Token access_token = get_access_token(api_key, secret_key) # 图像识别 image_path = 'test.jpg' text_result = ocr_text_recognition(image_path, access_token) object_result = object_detection(image_path, access_token) # 输出识别结果 print(text_result) print(object_result) ``` 以上代码演示了如何使用Python百度智能API实现OCR文字识别和物体识别。可以根据自己的需求修改API接口和参数,实现更多功能。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

货又星

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值