目录

点击直接看干货

介绍

从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应用的更多相关文章

  1. Windows 10 IoT Serials 11 – 如何设置微软认知服务中EndPoint

    1.问题描述 在UWP应用开发过程中,如果要使用微软认知服务,很多开发者会使用Microsoft.Oxford.Face.Microsoft.Oxford.Vision的NuGet包来完成.如果在vi ...

  2. PHP使用微软认知服务Face API

    下面主要介绍基于PHP语言,基于guzzle类库,调用微软最新推出的认知服务:人脸识别. 实验环境: IDE:Eclipse for PHP Developers Version: Neon.1 Re ...

  3. 微软认知服务 Luis

    学习认知服务 Luis(Language understand intellgence service) 简述: 开发者可以通过Luis开发可以理解人类语言的只能应用,学习人类语言分析语义. 利用这个 ...

  4. 通过Javascript调用微软认知服务情感检测接口的两种实现方式

    这是今天在黑客松现场写的代码.我们的项目需要调用认知服务的情感识别接口.官方提供了一种方式,就是从一个远程图片进行识别.我另外写了一个从本地文件读取并上传进行识别的例子. 官方文档,请参考 https ...

  5. Andriod开发第一步-部署环境(搬运&&总结)

         第一步:安装JDK      第二步:配置Windows上JDK的变量环境      第三步:下载安装Eclipse      第四步:下载安装Android SDK 配置了JDK变量环境, ...

  6. 微软认知服务:QnA Maker使用示例

    简介 QnA Maker 从用户提供的内容(包括 FAQ URL.文档和编辑内容)中提取所有可能存在的问答对:利用易于使用的界面编辑.删除和添加问答对,然后将知识库作为 API 终结点进行发布:QnA ...

  7. ios开发第一步--虚拟机安装MAC OS X

    暂时还没买Macbook,先用虚拟机练练手. 先说说准备工作,我是在win8下安装的,这个不是关键的,只要Vmware版本和MAC OS X版本确定就行了,win7下同样可以. 1.虚拟机Vmware ...

  8. JAVA开发第一步 - JDK安装与配置

    JDK的安装与环境变量配置是JAVA开发之路的第一步,很多新人在这一步上就卡了很久,浪费了很多时间,甚至有些人就轻易地“从入门到放弃”了.今天我们就来一步步教你如何打倒这第一只拦路虎. 1.JDK下载 ...

  9. JDK 安装与环境配置配置——Android开发第一步

    什么是JDK? JDK 即 Java Development Kit,Java开发工具包,用来编译 Java 程序.JRE 在接触JDK的过程中,同时了解到 JRE,JRE 即 Java Runtim ...

随机推荐

  1. Database Replay和Consolidated Database replay

    简介 在数据库的迁移和升级场景中,我们经常会遇到一个问题:在做压力测试时,如何模拟真实的业务压力,解决这个问题的方法有很多,比如:应用方开发模拟程序或者使用压力测试工具模拟,如load runner, ...

  2. 终于等到你:CYQ.Data V5系列 (ORM数据层)最新版本开源了

    前言: 不要问我框架为什么从收费授权转到免费开源,人生没有那么多为什么,这些年我开源的东西并不少,虽然这个是最核心的,看淡了就也没什么了. 群里的网友:太平说: 记得一年前你开源另一个项目的时候我就说 ...

  3. C语言 · 查找整数 · 基础练习

    问题描述 给出一个包含n个整数的数列,问整数a在数列中的第一次出现是第几个. 输入格式 第一行包含一个整数n. 第二行包含n个非负整数,为给定的数列,数列中的每个数都不大于10000. 第三行包含一个 ...

  4. Java基础Collection集合

    1.Collection是所有集合的父类,在JDK1.5之后又加入了Iterable超级类(可以不用了解) 2.学习集合从Collection开始,所有集合都继承了他的方法 集合结构如图:

  5. ajax异步请求

    做前端开发的朋友对于ajax异步更新一定印象深刻,作为刚入坑的小白,今天就和大家一起聊聊关于ajax异步请求的那点事.既然是ajax就少不了jQuery的知识,推荐大家访问www.w3school.c ...

  6. nginx+iis+redis+Task.MainForm构建分布式架构 之 (redis存储分布式共享的session及共享session运作流程)

    本次要分享的是利用windows+nginx+iis+redis+Task.MainForm组建分布式架构,上一篇分享文章制作是在windows上使用的nginx,一般正式发布的时候是在linux来配 ...

  7. 算法与数据结构(十四) 堆排序 (Swift 3.0版)

    上篇博客主要讲了冒泡排序.插入排序.希尔排序以及选择排序.本篇博客就来讲一下堆排序(Heap Sort).看到堆排序这个名字我们就应该知道这种排序方式的特点,就是利用堆来讲我们的序列进行排序.&quo ...

  8. Kooboo CMS技术文档之三:切换数据存储方式

    切换数据存储方式包括以下几种: 将文本内容存储在SqlServer.MySQL.MongoDB等数据库中 将站点配置信息存储在数据库中 将后台用户信息存储在数据库中 将会员信息存储在数据库中 将图片. ...

  9. 纸箱堆叠 bzoj 2253

    纸箱堆叠 (1s 128MB) box [问题描述] P 工厂是一个生产纸箱的工厂.纸箱生产线在人工输入三个参数 n, p, a 之后,即可自动化生产三边边长为 (a mod P, a^2 mod p ...

  10. JSP 标准标签库(JSTL)

    JSP 标准标签库(JSTL) JSP标准标签库(JSTL)是一个JSP标签集合,它封装了JSP应用的通用核心功能. JSTL支持通用的.结构化的任务,比如迭代,条件判断,XML文档操作,国际化标签, ...