使用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.