从零开始玩人工智能—机器视觉API—02

本期有福利哦!不要错过啦!

前文简单实现了认知服务对图片的检测识别。检测识别是其他机器视觉实现的基础,除了我们示例代码涉及的初步“看懂”图片,认知服务其实可以按照要求返回不同的信息,例如:

  • Categories – categorizes image content according to a taxonomy defined in documentation.
  • Tags – tags the image with a detailed list of words related to the image content.
  • Description – describes the image content with a complete English sentence.
  • Faces – detects if faces are present. If present, generate coordinates, gender and age.
  • ImageType – detects if image is clipart or a line drawing.
  • Color – determines the accent color, dominant color, and whether an image is black&white.
  • Adult – detects if the image is pornographic in nature (depicts nudity or a sex act). Sexually suggestive content is also detected.
  • Celebrities – identifies celebrities if detected in the image.
  • Landmarks – identifies landmarks if detected in the image.

有一项功能信息,Adult,我们可以把它理解为成人图像识别。互联网太强大,但很多时候,我们不希望在不合适的时候看到成人图像,例如不想让孩子看到成人内容。据说,有个职业叫做鉴黄师,以后是不是可以让AI来做这样的工作呢?于是,这个API的返回引起了我的兴趣……

首先想试试机器视觉,于是找了Cortana的照片让它识别。还挺铁面无私的,尽管是自家的,Computer Vision API 还是告诉我,它觉得这张图有点轻度猥亵(0.342),但不算成人内容。

那怎样算是成人内容呢?坦白说,我觉得目前准确度还不是很高吧,以科学的名义,我尝试了露点的人体艺术照片,甚至无码高清的AV截图……它一直告诉我是猥亵内容,却没说是成人内容…直到我突然想到,也许是目前人工智能训练的图片不多?换个知名些的图片呢?脑海里想到了“德艺双馨”的苍老师…行动起来!

终于,成人内容评分上去了,机器视觉告诉我这是张×××了,泪目……

还是挺强大的,不光知道是张×××,而且告诉我,图中是 Sola Aoi lying on a bed。苍老师躺在床上…… 你不信 Sola Aoi 就是苍老师?来,上Wiki~

没错吧?机器视觉很准确的认出了苍老师,以及她在干啥,看来也是阅片无数,心中无码的老司机啊~

不要以为我是哗众取宠哦,看看百度图片,已经开始在图片搜索中加入了机器视觉了,可以通过图片了解到对应的信息了。脸盲症的我有救了……

福利聊完了,再看看别的。上期聊了机器视觉能够从图片中分辨86类事物,其实有些事物是我们特别注意的,比如著名的地方和人。在机器视觉API的接口中,就有针对这两种的特定领域识别。

上期我对把天安门识别为:A large red building with tiananmen square in the background 耿耿于怀,所以我特意在使用celebrity和landmark之前试了试白宫的图片。很好~一视同仁,白宫也被识别为:A large white building with grass and trees with white house in the background 看来,是机器视觉的语言能力还不太好,哈哈。

我们来指定机器视觉识别一个地理标志 Landmark。我找了一张西雅图的照片,表达我没能参加正在西雅图举办的2018第25届MVP全球峰会的遗憾。这张照片跟之前我去峰会时,在Kerry Park冻了四小时拍的那些照片角度很接近。

代码和之前的类似,只是POST的URL不太一样。我尝试修改一下matplotlib里画图的参数,看看能不能把标记写到右上方。

果然,太空针还是被识别出来了,给出了相似度评分:


{  'result': {   'landmarks':     [{     'name': 'Space Needle',      'confidence': 0.985418438911438    }]   },   'requestId': '28210182-6b2b-422b-b94d-daa482d20c92',   'metadata': {   'height': 428,    'width': 665,    'format': 'Jpeg'  }
}

Space needle

把返回的Caption写到图片上。

挺简单吧。接下来看看人物识别的。为了考考人工智能,也为了有点戏剧效果,我找了张和宠物“撞脸”的照片给机器视觉。原本想找孙红雷和×××梗的,一时没找到,也怕机器视觉不认识。萨缪尔.杰克逊是为人熟知的演员,在漫威电影里他是S.H.I.E.L.D.神盾局的局长。那就用他了~

     机器视觉很聪明,没有认错,哈哈哈。返回了简单明了的人名、相似度评分和脸部取样区域。


{  'requestId': '22d4ff5a-be22-4714-819c-16cb0b4ec8a6',   'metadata': {   'width': 888,    'format': 'Jpeg',    'height': 525  },   'result': {   'celebrities':    [{    'confidence': 0.9998701810836792,     'name': 'SAMUEL L. JACKSON',     'faceRectangle': {     'width': 280,      'height': 280,      'top': 152,      'left': 25    }   }]  }}

SAMUEL L. JACKSON

前面苍老师做识别的时候,不是画了个框显示面部识别的区域吗?我们也来画一个,然后把识别出来的名字写在框上。干这个需要用到返回的脸部坐标,然后使用matplotlib来绘制。

这就是输出的结果了。一共也没几行代码,是不是很简单?

原文地址:http://blog.51cto.com/haohu/2085460

时间: 2024-11-11 14:32:03

从零开始玩人工智能—机器视觉API—02的相关文章

从零开始玩人工智能—推荐服务

有一个非常经典的段子,就是"啤酒和尿布".故事是说,沃尔玛的一位门店经理发现,周末啤酒和尿布的销量会"落霞与孤鹜齐飞,秋水共长天一色",一起上涨.经过分析,是因为奶爸们周末看球喝啤酒的同时要给娃带上尿布,然后就把这两样商品摆在一起促进销售云云.甚至专门用这个案例作为一本书的标题:    先且不论这个故事的真实性(知乎:数据挖掘中最经典的案例之一-啤酒与尿布是真实的案例吗?),可见人们对于数据挖掘分析并用以提升业务是很痴迷的.以前可能要雇一群人分析大量的数据给出可能的

从零开始玩人工智能-人脸 API-03

前文我们尝试写了一个完整的人脸验证过程,从创建一个组,一个人,到为人提供照片,并训练AI,直至最后提供一张照片让 AI 利用 Face API 判断是不是这个特定的人. 另一个经常会用到的人脸识别,是在一张照片中查找认识的人.Facebook什么的挺早就能够识别照片中的人并可以让你给他们打上标签.其实,利用Face API做类似的事情也一点不复杂.不信我们用代码来看看. 为了说明在一张合影中 AI 能够找到并识别特定人,我用了去年峰会中国MVP及MVP Lead梁迪和微软CEO萨蒂亚·纳德拉(S

从零开始玩人工智能-机器人服务-04

前文书说到目前微软的Bot机器人分为五类,也从以前的Bot Framework迁往Azure的Bot Service.利用QnA Maker,我们已经快速的做了一个对话机器人.那么,怎么让这个对话机器人面向大众提供服务呢?目前的架构而言,自己开发代码连到QnA Maker机器人是一种做法,而使用Azure的Bot Service让机器人更加容易部署,更加聪明也是一种做法.接下来就会看看怎么在Azure里部署一个机器人.   在Azure的订阅里,从"AI+Cognitive Services&q

【高德地图API】从零开始学高德JS API(七)——定位方式大揭秘

摘要:关于定位,分为GPS定位和网络定位2种.GPS定位,精度较高,可达到10米,但室内不可用,且超级费电.网络定位,分为wifi定位和基站定位,都是通过获取wifi或者基站信息,然后查询对应的wifi或者基站位置数据库,得到的定位地点.定位数据库可以不断完善不断补充,所以,越定位越准确.本文详细描述了,如果使用高德JS API来实现位置定位.城市定位的方法,包含了IP定位,浏览器定位,检索定位等多种网络定位方法.当然,如果您的手机有GPS功能,那么使用浏览器定位的时候,会自动获取GPS信息,使

【高德地图API】从零开始学高德JS API(四)搜索服务

摘要:地图服务,大家能想到哪些?POI搜素,输入提示,地址解析,公交导航,驾车导航,步行导航,道路查询(交叉口),行政区划等等.如果说覆盖物Marker是地图的骨骼,那么服务,就是地图的气血.有个各种各样的地图服务,我们的地图应用才能变得有血有肉,活灵活现.第四篇拆成了几个要点,本篇主要讲搜索服务.包括周边搜索,关键词搜索,范围搜索,搜索提示(自动完成,输入提示),行政区域,交叉路口,检索自有数据(云图). demo:http://zhaoziang.com/amap/zero_4_1.html

【高德地图API】从零开始学高德JS API(二)地图控件与插件——测距、圆形编辑器、鼠标工具、地图类型切换、鹰眼鱼骨

摘要:无论是控件还是插件,都是在一级API接口的基础上,进行二次开发,封装的一系列更加便于开发者使用,减少开发者工作量的二级API接口.除了官方通用的鱼骨.鹰眼控件,还有大量官方开发的地图插件,类似谷歌的lib.当然本文还会介绍自定义插件的使用. ------------------------------------------------------------------------------------------------- 第一部分 控件 目前官方支持的控件包含:缩放控制条-地图

【高德地图API】从零开始学高德JS API(五)路线规划——驾车|公交|步行

先来看两个问题:路线规划与导航有什么区别?步行导航与驾车导航有什么区别? 回答: 1.路线规划,指的是为用户提供3条路线推荐.[高德]在提供路线规划的时候,会提供用户自定义路线规划功能,这是别家没有做到的.导航,指的是为驾车用户提示路口信息,向左向右,进入匝道等信息. 2.我们这里说的步行导航和驾车导航,严格的说,应该是路线规划.从A地到B地,如果是驾车,路线规划会将公路路网做为搜索数据:如果是步行,过街天桥.地下通道.人行道做为搜索数据. ---------------------------

【高德地图API】从零开始学高德JS API(四)搜索服务——POI搜索|自动完成|输入提示|行政区域|交叉路口|自有数据检索

摘要: 地图服务,大家能想到哪些?POI搜素,输入提示,地址解析,公交导航,驾车导航,步行导航,道路查询(交叉口),行政区划等等.如果说覆盖物Marker是地图的骨骼,那么服务,就是地图的气血.有个各种各样的地图服务,我们的地图应用才能变得有血有肉,活灵活现. 第四篇拆成了几个要点,本篇主要讲搜索服务.包括周边搜索,关键词搜索,范围搜索,搜索提示(自动完成,输入提示),行政区域,交叉路口,检索自有数据(云图). demo:http://zhaoziang.com/amap/zero_4_1.ht

【高德地图API】从零开始学高德JS API(一)地图展现——仙剑地图,麻点图,街景,室内图

下面是基于KWIC 的关键字匹配算法(管道+过滤器模式下实现) 关键部分的管道+过滤器 软件体系下的实现, 在很多的关键字搜索平台都使用了这一 循环移位+排序输出的 关键字匹配算法: 具体需求如下: 1.使用管道-过滤器风格: 每个过滤器处理数据,然后将结果送至下一个过滤器,.要有数据传入,过滤器即开始工作.过滤器之间的数据共享被严格限制在管道传输 四个过滤器: 输入(Input filter): 从数据源读取输入文件,解析格式,将行写入输出管道 移位(CircularShifter filte