0.简介
1.Visual Recognition 是一款由IBM推出的用于图像识别的API , 作为IBM Cognitive 大方向的一员,这款开放的API在一些基本集合上可以允许用户可以自己定义要识别的物体。 之前看到@hain 也分享了一款IBM的用基于深度计算于文本分析,图像识别API Alchemy 下面来说说这两者的区别
- Alchemy :是一款由IBM 在2015年收购的一家公司的产品,这款产品已经发展的相当不错,在辨识数据库集方面已经积累了相当的可靠数据,这也帮助其在辨识精度上有着很高的准确度。 可以做到
- 图像元素识别
- 人脸识别(性别,年龄,名人信息)
- 文字信息提取
- Visual Recognition : IBM 最近才推出的用于图像识别的 API ,由于发展时间较短,而且这两款API 的数据是不共享的,所以目前来说,精度还有所欠缺。但它对比Alchemy一项很大的优势就是,允许用户自己自定义识别符,通过对API 的训练达到个性化定制的目的。 可以做到 1.基本元素识别,如:鞋,车,山等等 2.训练强化自定义识别符
综上,虽然Alchemy 非常强大,但介于其无法自定义识别符,这篇文章我们就主要介绍一下Visual Recognition这款API,基于Node.js来搭建自己的图像识别应用。
大家可以先通过官方给的demo提前体验一下Visual Recognition 的魅力
1.安装与配置
1 安装watson-developer-cloud 依赖包
其中包含了所有IBM人工智能 waston的服务包括visual recognition ,text to speech 等等
npm install watson-developer-cloud
2 配置认证 ,要使用waston api 需要获得其认证,这里使用的是basic authentication 即用户名密码机制。由于IBM 云平台bluemix的存在,获得api key 将变得十分方便。 首先注册一个bluemix账号。
- 在bluemix上申请到visual recognition 服务或是单独申请服务,或是绑定到应用程序上。如果是绑定到应用程序上的点进引用程序查看,否则在下方这个服务列表查看
- 点选服务凭证,即可以看到已经申请到的服务的账号密码
在Node.js 中应用服务
将之前获得的凭证替换这列的username 和pssword
如 username: ‘abc’
注意这列的version_date 是这个api的版本,可以在 https://watson-api-explorer.mybluemix.net/ 找到确切的信息
var watson = require('watson-developer-cloud');
var visual_recognition = watson.visual_recognition({
username: '{username}',
password: '{password}',
version_date: '2015-12-02'
});
接下来就可以通过 visual_recognition
这个对象的各种方法来调用API ,主要的方法有
-
识别图片
visual_recognition.classify(params,callback)
-
获取识别符列表
visual_recognition.listClassifiers(params,callback)
-
创建自定义识别符
visual_recognition.createClassifier(params,callback)
-
删除识别符
visual_recognition.deleteClassifier({classifier_id:<id>},callback)
具体如何使用可以通过这里查看文档
如果大家对这个 API 感兴趣,我会在下一篇文章中具体带领大家如何实现。
转载请注明作者及出处:Archer—http://www.rockq.org/topic/37/ibm-watson-visual-recognition-我的图像识别-不-是你的图像识别