python实战项目,深度学习让电脑认出菜品,调用百度人工智能 API 实现
发表于: 2018-06-01 22:59:00 | 已被阅读: 29 | 分类于: Python
前言
现在人工智能,深度学习等词汇贯穿了整个互联网,各种人工智能产业也是非常火爆。人工智能也的确给我们生活带来了一些方便,比较成熟的有以人脸识别为代表的图片识别,语音识别也非常成熟。这些高大上的东西,我们平民是否能接触到呢?注意到各个巨头都已经提供了免费的api,我们这里就做一些使用示范。
首先看看百度的人工智能 API 介绍
百度人工智能 API 主要分
· 接口能力
· 请求格式
POST方式调用
注意:Content-Type为application/x-www-form-urlencoded,然后通过urlencode格式化请求体
· 返回格式
JSON格式
· 调用方式
百度给出了两种调用方式,这里只介绍一种。即通过
https://aip.baidubce.com/rest/2.0/image-classify/v2/dish?access_token=TOKEN
这里要注意的是,
· access_token 的获取
获取
https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&client_id=【AK】&client_secret=【SK】
注册百度AI帐号,即可免费获得
python 实战代码
· 获取 token
实际上就是访问带上
文件名 token.py
# encoding:utf-8
import urllib, urllib2, sys
import ssl, json
AK = "TwAOxxxxxxxxxxxxxxxxxxxZn" # 官网获取的 AK
SK = "nExxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxXF" # 官网获取的 SK
host = 'https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials'\
'&client_id=%s'\
'&client_secret=%s' % (AK, SK)
def GetToken():
request = urllib2.Request(host)
print host
request.add_header('Content-Type', 'application/json; charset=UTF-8')
response = urllib2.urlopen(request)
content = response.read()
if (content):
js = json.loads(content)
return js['access_token']
return None
· 识别代码
获取到
测试看看效果
我们首先在代码所在目录新建文件夹 pic
用于存放图片,准备几张菜品图,和一张干扰图
· 地锅鸡识别
· 西红柿炒蛋识别
· 紫菜蛋汤识别
· 小姐姐识别
总体而言,识别结果还是非常不错的,作为干扰的小姐姐识别项也被鉴别出来了。