【AI开发第一步】微软认知服务API应用
目录
介绍
从3月份Google家的阿尔法狗打败韩国围棋冠军选手李世石,到之后微软Build2016大会宣布的“智能机器人”战略。种种迹象表明未来慢慢会进入“人工智能”时代,人工智能不再像以前那样听起来高大上,普通的码农屌丝也能开发出具备人类智慧的APP。听起来是不是很叼?
以前是这样的:
You:吴博士,您研究的主要方向是撒?
吴博士:人工智能。
You:挖槽,好叼。你觉得未来机器人会不会控制人类呢?
吴博士:......
现在是这样的:
You:博士来来来,看看我这个App(将‘高富帅’才会用的肾8递过去)。
吴博士:嗯,很普通嘛。有什么特别的吗?
You:用它自拍一下试试...
吴博士:(拍完照)。窝草,它怎么认识我姓Wu?年龄显示也太大了吧,我才42啊!
You:博士,这是一个具备'人类意识'的App额...博士你听,它从你脸色判断出你常年肾透支啊...
吴博士:......
借用微软认知服务官网上的一段话:
“
Give your Apps a human side
Knock down barriers between you and your ideas. Enable natural and contextual interaction with tools that augment users' experiences via the power of machine-based AI. Plug them in and bring your ideas to life.
”
翻译过来大概是:
“
让你的应用拥有人的智慧
你的想法不再只是想法。基于机器学习的人工智能使自然的和基于语境的人机交互变为可能,为你的应用增强用户体验。现在你就可以在你的应用中接入这些智能,把你的想法变成现实。
”
微软已经公开了“认知服务”的一些API,用起来特别简单,NuGet上有现成的Package。主要分为5大类:
API分类
以上5大类中,每类API都可以免费试用,当然有次数限制。对于那种想体验一下的童鞋完全够用,如果想要大范围商用,花钱买也行。
使用“视觉”类API完成的demo
废话说太多,还是要上点干货。
空余时间利用“视觉”类API做了一个Demo。具备以下功能:
- 图片分析。描述图片、给图片贴Tags、判断图片是否涉黄、找出图片中的人脸等等;
- 人脸分析。判断人脸年龄、性别(跟How-Old颜值相机类似);
- 人脸情绪分析。判断每张脸的表情,是否‘生气’、‘高兴’、‘惊讶’...
可以说功能强大,呵呵,至少比how-old颜值相机功能大一点 :)
源码下载(干活):
https://github.com/sherlockchou86/ComputerVision.UWP
手机上也可以运行,图片有三种方式:URL网络图片、本地上传、以及相机拍照。都有对应的API。没有做成App上传到Store,感觉界面并不太友好,只适合开发人员看看而已。
下面是截图:
【1】人脸识别

【2】情绪分析

【3】图片描述(注意description中的内容,直接可以识别图中人物为川普)

【4】判断图片是否涉黄(虽然图中adult content为false,但是racy content为true,说明露得不是很多)

【5】给图片打标签(分类),可以看到,非常准确

本文仅介绍了跟“视觉”有关的API使用方法,大概就相当于人类的“眼睛”。其他诸如“嘴巴说话”、“大脑分析语音”、“理解文本”以及“掌握知识”等一系列API暂未涉及到。本文仅是开端,大家可以试试其他:)
开源有益,多谢点赞!
【AI开发第一步】微软认知服务API应用的更多相关文章
- Windows 10 IoT Serials 11 – 如何设置微软认知服务中EndPoint
1.问题描述 在UWP应用开发过程中,如果要使用微软认知服务,很多开发者会使用Microsoft.Oxford.Face.Microsoft.Oxford.Vision的NuGet包来完成.如果在vi ...
- PHP使用微软认知服务Face API
下面主要介绍基于PHP语言,基于guzzle类库,调用微软最新推出的认知服务:人脸识别. 实验环境: IDE:Eclipse for PHP Developers Version: Neon.1 Re ...
- 微软认知服务 Luis
学习认知服务 Luis(Language understand intellgence service) 简述: 开发者可以通过Luis开发可以理解人类语言的只能应用,学习人类语言分析语义. 利用这个 ...
- 通过Javascript调用微软认知服务情感检测接口的两种实现方式
这是今天在黑客松现场写的代码.我们的项目需要调用认知服务的情感识别接口.官方提供了一种方式,就是从一个远程图片进行识别.我另外写了一个从本地文件读取并上传进行识别的例子. 官方文档,请参考 https ...
- Andriod开发第一步-部署环境(搬运&&总结)
第一步:安装JDK 第二步:配置Windows上JDK的变量环境 第三步:下载安装Eclipse 第四步:下载安装Android SDK 配置了JDK变量环境, ...
- 微软认知服务:QnA Maker使用示例
简介 QnA Maker 从用户提供的内容(包括 FAQ URL.文档和编辑内容)中提取所有可能存在的问答对:利用易于使用的界面编辑.删除和添加问答对,然后将知识库作为 API 终结点进行发布:QnA ...
- ios开发第一步--虚拟机安装MAC OS X
暂时还没买Macbook,先用虚拟机练练手. 先说说准备工作,我是在win8下安装的,这个不是关键的,只要Vmware版本和MAC OS X版本确定就行了,win7下同样可以. 1.虚拟机Vmware ...
- JAVA开发第一步 - JDK安装与配置
JDK的安装与环境变量配置是JAVA开发之路的第一步,很多新人在这一步上就卡了很久,浪费了很多时间,甚至有些人就轻易地“从入门到放弃”了.今天我们就来一步步教你如何打倒这第一只拦路虎. 1.JDK下载 ...
- JDK 安装与环境配置配置——Android开发第一步
什么是JDK? JDK 即 Java Development Kit,Java开发工具包,用来编译 Java 程序.JRE 在接触JDK的过程中,同时了解到 JRE,JRE 即 Java Runtim ...
随机推荐
- 2015 西雅图微软总部MVP峰会记录
2015 西雅图微软总部MVP峰会记录 今年决定参加微软MVP全球峰会,在出发之前本人就已经写这篇博客,希望将本次会议原汁原味奉献给大家 因为这次是本人第一次写会议记录,写得不好的地方希望各位园友见谅 ...
- Javascript - Promise学习笔记
最近工作轻松了点,想起了以前总是看到的一个单词promise,于是耐心下来学习了一下. 一:Promise是什么?为什么会有这个东西? 首先说明,Promise是为了解决javascript异步编 ...
- C语言 · Torry的困惑(基本型)
问题描述 Torry从小喜爱数学.一天,老师告诉他,像2.3.5.7--这样的数叫做质数.Torry突然想到一个问题,前10.100.1000.10000--个质数的乘积是多少呢?他把这个问题告诉老师 ...
- Oracle 的基本操作符
!= 不等于 select empno,ename,job from scott.emp where job!='manager' ^= 不等于 select empno,ename,job from ...
- 如何选择PHP框架?
PHP是世界上最受欢迎的编程语言之—.最近发布的PHP7令这种服务器的编程语言比以前变得更好,更稳定了. PHP被广泛应用于重大的项目.例如Facebook就是使用PHP来维护和创建它们的内部系统的. ...
- vmware上网的方式
vmware上网设置 vmware虚拟机上网设置 我的一些心得,如下: 如何使vmware虚拟机中的操作系统能够上网? 第一种情况: 主机使用PPPOE拨号上网 方法一:NAT方式 1.先关闭虚拟机中 ...
- HTML+CSS 项目总结
在过去的大概一个月的学习,基本掌握了HTML+CSS的用法和特性. 这个星期老师给我们布置了一个PC端的实战项目,并且要求在3-4天内完成,我不惜废寝忘食,在紧迫的时间内大致地完成了,但是有些效果不能 ...
- Extjs 让combobox写起来更简单
也已经写了很久时间的extjs ,每次都用到很多的combobox,配置很多东西觉得实在是太麻烦,所以根据常用到的情况写了一个简便的combobox,再次记录下来,以免放在某个地方忘记了找不到了. 定 ...
- 使用DeviceOne实现微信小程序功能
微信小程序即将推出,还没推出就火的不行了.基于微信这个巨大平台,小程序必然能有巨大成功.不过它并不能完全取代App,该开发App还得开发.如果我们自己想实现一个基于自己的APP包含类似微信的小程序功能 ...
- Missing Push Notification Entitlement 问题
最近打包上传是遇到一个问题: 描述: Missing Push Notification Entitlement - Your app includes an API for Apple's Push ...