【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 ...
随机推荐
- 在ASP.NET Core中使用百度在线编辑器UEditor
在ASP.NET Core中使用百度在线编辑器UEditor 0x00 起因 最近需要一个在线编辑器,之前听人说过百度的UEditor不错,去官网下了一个.不过服务端只有ASP.NET版的,如果是为了 ...
- .NET基础拾遗(5)多线程开发基础
Index : (1)类型语法.内存管理和垃圾回收基础 (2)面向对象的实现和异常的处理基础 (3)字符串.集合与流 (4)委托.事件.反射与特性 (5)多线程开发基础 (6)ADO.NET与数据库开 ...
- C语言 · 奇偶判断
问题描述 能被2整除的数称为偶数,不能被2整除的数称为奇数.给一个整数x,判断x是奇数还是偶数. 输入格式 输入包括一个整数x,0<=x<=100000000. 输出格式 如果x是奇数,则 ...
- SignalR快速入门 ~ 仿QQ即时聊天,消息推送,单聊,群聊,多群公聊(基础=》提升)
SignalR快速入门 ~ 仿QQ即时聊天,消息推送,单聊,群聊,多群公聊(基础=>提升,5个Demo贯彻全篇,感兴趣的玩才是真的学) 官方demo:http://www.asp.net/si ...
- 猖獗的假新闻:2017年1月1日起iOS的APP必须使用HTTPS
一.假新闻如此猖獗 刚才一位老同事 打电话问:我们公司还是用的HTTP,马上就到2017年了,提交AppStore会被拒绝,怎么办? 公司里已经有很多人问过这个问题,回答一下: HTTP还是可以正常提 ...
- python通过protobuf实现rpc
由于项目组现在用的rpc是基于google protobuf rpc协议实现的,所以花了点时间了解下protobuf rpc.rpc对于做分布式系统的人来说肯定不陌生,对于rpc不了解的童鞋可以自行g ...
- PHP中遍历XML之SimpleXML
简单来讲述一些XML吧,XML是可扩展标记语言,是一种用于标记电子文件使其具有结构性的标记语言.XML是当今用于传输数据的两大工具之一,另外一个是json. 我们在PHP中使用XML也是用来传输数据, ...
- 数据图表插件Echarts(一)
一.引言 最近做一个智慧城市项目,项目中需要图表和报表进行数据分析,从网上找了很多,最后找到了百度开放的echarts,一个很强大的插件. 二.介绍 ECharts,缩写来自Enterprise Ch ...
- js学习之类型识别
用来判别类型的方法有好多,整理了一下4种方法,平时用的时候,在不同情景下,还是要结合着使用的. 方法一 typeof:可以识别标准类型,除了Null:不能识别具体的对象类型,除了Function &l ...
- 脑洞大开之采用HTML5+SignalR2.0(.Net)实现原生Web视频
目录 对SignalR不了解的人可以直接移步下面的目录 SignalR系列目录 前言 - -,我又来了,今天废话不多说,我们直接来实现Web视频聊天. 采用的技术如下: HTML5 WebRTC Si ...