【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 ...
随机推荐
- 用php做注册审核
做注册审核就像前面讲的注册登录一样,也是要连接数据库 首先在数据库内要做这样一张表: 表名为users表 里面的列名分别为用户名,密码,姓名,性别,生日,账户的状态,照片 然后就可以写代码了,要注册的 ...
- Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part1:准备工作
Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part1:准备工作 环境:OEL 5.7 + Oracle 10.2.0.5 RAC 1.实施前准备工作 1.1 服务器安装操 ...
- js中参数不对应问题
因为js是一种弱类型的编程语言,对数据类型的要求没有其他编程语言的要求严格,所以在定义函数的时候不需要像java和C#一样对其传入参数的类型进行定义.那么传入参数的个数有没有影响呢?今天小猪就做了个实 ...
- 开源 iOS 项目分类索引大全 - 待整理
开源 iOS 项目分类索引大全 GitHub 上大概600个开源 iOS 项目的分类和介绍,对于你挑选和使用开源项目应该有帮助 系统基础库 Category/Util sstoolkit 一套Cate ...
- Atitit.如何建立研发体系
Atitit.如何建立研发体系 组织,流程,prj..Mana oppm 发管理是一个完整的管理体系,从结构上来讲,它主要由四个方面的内容构架而成:组织结构与岗位设置 管理流程与工作流程..项目及管 ...
- Mysql - 存储过程/自定义函数
在数据库操作中, 尤其是碰到一些复杂一些的系统, 不可避免的, 会用到函数/自定义函数, 或者存储过程. 实际项目中, 自定义函数和存储过程是越少越好, 因为这个东西多了, 也是一个非常难以维护的地方 ...
- Ubuntu手动设置DSL连接
在安装完Ubuntu之后,发现图形界面的DSL连接不管用了,郁闷了好几天,想想移动每个月120个小时的流量岂不是白白浪费了.正当我想重返Windows系统的时候,却发现了手动设置连接DSL的好方法,感 ...
- 舍弃Nunit拥抱Xunit
前言 今天与同事在讨论.Net下测试框架的时候,说到NUnit等大多数测试框架的SetUp以及TearDown方法并不是显得那么完美,所以在公司内部的项目中采用了Xunit框架.那么究竟是什么样的原因 ...
- WPF自定义控件第二 - 转盘按钮控件
继之前那个控件,又做了一个原理差不多的控件.这个控件主要模仿百度贴吧WP版帖子浏览界面左下角那个弹出的按钮盘.希望对大家有帮助. 这个控件和之前的也差不多,为了不让大家白看,文章最后发干货. 由于这个 ...
- 弄了一个支持SSL的TCP客户端
近日需要做一些TCP的收发的调试,到网上去找TCP调试工具,找了好几款,发现不是功能不全就是不支持HEX,更重要的SSL也不支持,于是动手写了一款,叫TCPRunner,有以下特性: 使用异步IO方式 ...