使用Google Vision API做图像识别

今天无意中发现了一个好玩的东西,发现 Google 提供了图像识别的 API 接口:官方文档

不过在国内要使用 Google 的服务,你懂的。

不截图了,应该能看懂,看不懂请 Google。

首先需要准备好一张国际通用的 VISA 信用卡(亲测过另外一张万事达卡在绑定时提示不受支持),登录谷歌云,左上角有个蓝色的 TRY IT FREE ,戳它。

然后登录自己的 Google 账户。进去之后填上自己的信息和绑定上面说的 VISA 卡,就可以了。

虽然是要绑定信用卡,但是每月调用次数少于 1000 次是免费的,而且新用户 Google 还送 $300。

完成之后,登录控制台,创建一个项目,随便起了项目名吧,比如 visiontesting

今天我测试的脚本是 LABEL_DETECTION ,地址在这里

因为我是在本地调用 API,所以需要以下操作步骤:

安装 Google Cloud SDK

wget -c "https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud-sdk-145.0.0-darwin-x86_64.tar.gz" -O google-cloud-sdk-145.0.0-darwin-x86_64.tar.gz  
tar xvf google-cloud-sdk-145.0.0-darwin-x86_64.tar.gz  
cd google-cloud-sdk  
./install.sh

安装好后重新登录下终端,然后执行初始化:

gcloud init  

初始化的时候会打开浏览器让你登录 Google 账号进行确认,并选择一个项目,比如我选择了上面说的 visiontesting

安装 Auth 组件

gcloud beta auth application-default login  

然后需要创建一个服务账号,可参考这里

弄好之后浏览器会自动给你下载一个 json 文件,保存好,比如我拷贝为 ~/visiontesting.json

然后设置环境变量:

export GOOGLE_APPLICATION_CREDENTIALS=~/visiontesting.json  

下载示例脚本:

git clone https://github.com/GoogleCloudPlatform/python-docs-samples.git  

然后就可以测试了:

cd python-docs-samples/vision/api/label  
pip install -r requirements.txt  
python label.py <图片文件>  

以下是两个测试结果:

准确率非常高!

Have Fun.