微信号:crossincode

介绍:每天5分钟,学点简单的编程,用新的思维方式看世界.【声明:公众号搜出的另一个同名是山寨货】

调教属于你的“贾维斯”(给自己挖了一个很大的坑)

2018-07-17 14:13 Crossin先生

今天玩一下现在很火的人工智能


废话不多说,先来看几张图:


看出什么蹊跷了吗?


再来看一个视频:


演示网址和代码见文末


人工智能离我们有多远?你觉得只有战胜柯杰的阿尔法狗才算是人工智能吗?看看周围:你的美颜相机、你刷的抖音推荐、你手机上的语音助手……甚至包括给你送外卖的小哥分配,现在都少不了人工智能的参与。


《钢铁侠》中的智能管家贾维斯,如今看起来也不算那么“科幻”了。不少厂家最近都推出了智能音箱产品,可以语音聊天及控制家里的智能家居设备。



不过,我想要一个自己的“贾维斯”。


这个想法由来已久。现在看来,实现的可能性越来越高了。因为各种AI平台智能硬件都已成熟,而 Python 这个胶水语言又可以很方便地把各种模块拼接起来。


最近正好瞥见了一个有意思的新“玩具”--腾讯AI开放平台ai.qq.com),本来只是想简单给大家分享一下。结果我自己写得停不下来,借此机会开启我的调教之旅。(这回一定是一个深坑)


这次用到了AI平台的语音识别智能闲聊语音合成,把这三个功能串起来,实现了语音智能应答的功能。


目前功能可以说是十分初级,不过总要有个开始嘛,反正我有的是时间去打造她。


接下来的一些计划:


  • 增加摄像头,实现人脸识别和场景定位


  • 接上一个机械臂。之后所以无脑操作类的手机游戏,你们就别想跟我一起冲排名了


  • 安上轮子

  • 连接无人机


  • 当然,肯定还少不了树莓派


虽然还没想清楚最终会做出个什么东西,但这不重要,对我来说过程已经够有趣了。(应该整不出一个奥创来)


另外昨天还顺手拿人脸融合的接口做了个在线换装小工具,支持50种模板,想要体验的朋友,点击文末 阅读原文 可进入


昨天夜里把这个功能上线,朋友圈发了一下,很快就有几百人访问。现在文章推送出去,不知道我那小破服务器能不能顶得住。虽然已经对图片传输做了压缩优化,但还是很危险。如果请求失败,请稍晚些再来体验,或者自己下载代码运行。


外行看热闹,内行看门道。前面的热闹说完了,如果你还想了解更多,我们接下来就说点有信息量的门道。


这次代码用到的腾讯AI开放平台,现在功能已经不少,主要是自然语言处理计算机视觉智能语音三大方向。这次案例的代码,三个方向都涉及到了。



平台文档还算得上详细,也提供了在线功能演示,建议自己上去捣鼓一下。现在只要注册就能申请使用,不收费,作为学习来说也几乎没有限制。比较可惜的是我没看到有 Python 示例,所以你可以参考我的代码来写。(尤其是计算签名的部分,可以直接用我的代码。)


单看独立的 API 并不复杂,简单来说就是一个网络请求,你按要求提供了正确的参数,平台就会返回给你相应的结果。但如果你是刚接触这类接口,我相信你会被坑得鼻青脸肿,因为我也是过来人。


比较明显的坑大约有三个:


  1. 签名。这是开放 API 验证来源身份的标志,也是 API 新手必经的坎。你要了解 md5 的概念(之前文章有提及过【每周一坑】校验文件哈希),并且按照 API 的要求生成正确的签名。除了开始时理解上的困难,在开发调试时,因为最终输出只有一串字符,所以出错时很难 debug,只能一遍遍地仔细检查。


  2. 参数。参数看起来都给你规定好了,但实际用时才发现会有各种问题。比较常见的错误可能是编码。同样,因为缺少调试信息,即使是很低级的错误,也可能让你耗费很长时间。再加上有些你没注意到的文档细节(比如字符长度限制)和错误(语音合成里的请求方法是 POST 但文档上写的是 GET),这个步骤也会让你抓狂。


  3. 返回值。当你排除万难,终于拿到结果的时候,或许会一脸懵逼……因为除了自然语言接口外,图像和声音的返回值大多是经 base64 编码后的数据。你需要自己对这些数据进行处理、存储或展示。而如果你像我一样要把几个接口的功能串联起来,那么等待你的将是各种数据、文件类型的转换。好在 Python 在这方面还算方便,不然真的会痛不欲生。


所以,看起来只是简单的接口调用,对于经验不多的开发者来说,也不是容易的事。但这些光靠看是看不出来的,你必须亲手写过才能体会。写了之后就会发现,一些坑我早就给过预警。不用太过纠结于哪个教程更好,自己动起手来才是最好。



示例代码里包括语音智能聊天和换装的代码、以及一个简版的换装页面(基于django)。获取代码地址请在公众号(Crossin的编程教室)里回复 人工智能


如果有搞不定的问题,欢迎加入我的知识星球来跟我讨论,话题不限于示例代码。


点击文本阅读原文,可以进入在线换装小工具,欢迎体验及转发。





如需了解视频课程及答疑群等更多服务,请号内回复 码上行动

代码相关问题可以在论坛上发帖提问 bbs.crossincode.com


推荐阅读:

开发工具 世界杯 | 高考 | 我用Python | 知乎 | 排序 | 朋友圈 | 电影票 | 技术宅 | 火车票 | 单词表 | 押韵工具 | 新手建议 | 就业 



欢迎加入

Crossin的编程教室

crossincode.com


  请把我们分享给身边爱学习的小伙伴 :)  

点击文末“阅读原文”,进入在线换装小工具

 
Crossin的编程教室 更多文章 程序化套利:天下有没有稳赚不赔的买卖? 可变对象与不可变对象 【每周一坑】房贷计算器 |【解答】生成九宫格图片 世界杯竞猜,怎么选会赚 世界杯竞猜,怎么选会赚
猜您喜欢 苹果再次重申全面禁止热更新;用户打赏必须抽苹果税。第 7 期技术微周刊 安卓7.0“伪评测”!如此 实在太美 iOS优秀第三方库每日一讲,又一批神器到货了! 【新政落地】武汉警方今起全面受理落户申请-猫友速来围观~! 你是如何把Activity写的如此“万能”的