资讯专栏INFORMATION COLUMN

识图吟诗

zhangrxiang / 2480人阅读

摘要:架构识图吟诗架构由以下层和关联实现视图一个响应相对灵敏但不够美观的前端用户界面,只使用了原生。平台本版本部署在阿里云上,采用的流行框架。

写在前面

关于这个作品的设计理念和情怀,请看这里

初衷

随着作品的不断迭代和改进,我已经渐渐忘记初衷是什么了。是为了讨某人欢心做的小demo或是为了熟悉使用watson的练手作品,都已不大记得。然而现在,是想利用零碎的时间,做一个完整的项目。来探究AI之神奇并展现诗词之魅力。

构建和运行

识图吟诗是一个创意作品,通过使用watson相关的API,对图片进行认知分析,之后在诗词库中选择置信度较高的诗句作为结果返回。用户上传图片,尤其是风景图片,即可以得到较为吻合图片意境的诗词。

在作品开始构建之前,必须拥有一个包含信息的知识库,以便可以从中得到最恰当的答案。在这里,我通过爬虫,在网络上爬取了包含作者及名称在内的一千多首诗词名句,这些内容以excel表的形式存储。

代码

在早期的作品中,该应用程序是通过微信作为引导接口,部署在Bluemix上。但因为Bluemix开放的服务器在国外,所以效果不是很好。所以此版本,构建于阿里云服务器之上。

下面简短描述了使用的技术:

Python
作品主要使用的语言,Python对数据处理表现出强大的作用,同时提供丰富的库包方便实现各种需求。

IBM Watson
主要使用了Visual Recognition 这一服务用以对图片内容进行初步的识别分析。

Flask
这是一个基于Python开发的轻量级网络框架,在这里实现RESTful API,以支持用户发送图片并且获得结果。

HTML
采用原生HTML开发界面,用以与用户交互。(这是此版本最需要改进的一个方面)

Nginx
轻量级,高性能的web服务器。

uWSGI
实现了uwsgi和WSGI两种协议的Web服务器。

架构

识图吟诗架构由以下层和关联实现:

视图 *:一个响应相对灵敏但不够美观的前端用户界面,只使用了原生HTML。界面中的词句引自辛弃疾《贺新郎·甚矣吾衰矣》---“我见青山多妩媚,料青山见我应如是”。是为了表现一种思想,如果机器通过了图灵测试,能否真的认为它就具备了人类的情感。右上角以中国传统篆章的形式表现作品题目,为了和作品理念,艺术风格相呼应。此层中的视图组件允许用户通过一个输入点发送提交图片。

控制器 *:一个基于Flask的控制器层,向视图组件公开RESTful业务API。此REST API与后端处理过的数据进行交互。可扩展实现其他业务操作,包括调用其他服务或第三方API。

认知后端 *:Watson分析并处理了图片内容,而我处理了诗词库。类似于理解上下文的分析方式,处理全局图片内容,对这种非结构化的信息进行置信度判断,而后可以认为watson消化并理解了有关诗词的内容。 同时,提供了一个API,能够对收到的消息接受并返回答案。

平台 *:本版本部署在阿里云上,采用centos + Flask + Nginx + uWSGI的流行框架。

这里给出了整体架构的思路图:

运行

打开这里,选择文件后,点击上传图片。

总结及下一步 总结

Watson是一个极其强大和复杂的平台,他所拥有的,不仅仅是能看见的诸多服务,还有隐藏在其后的认知计算系统。我把这一版本作为V1.0,因为虽然还有很多地方待提高,但是迈出了关键的一步,即上线,有人使用,稳定,以及有趣。

下一步

前端采用框架进行重写,美化处理,支持响应式。

认知后端算法优化,意境更加吻合,支持识别更多景物。

加入更多服务,使得用户体验多样化。

作品体验地址:
http://47.93.229.184/

个人微信号Owcs:

个人网站:
http://www.changshunwang.com

如果你觉得有趣,在github上点个星吧:https://github.com/changshunw...

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/44388.html

相关文章

  • 构建和优化深度学习模型(神经网络机器识图

    摘要:构建和优化深度学习模型神经网络机器识图是基于华为云强大高性能计算提供一站式深度学习平台服务,内置大量优化的网络模型算法,以兼容便携高效的品质帮助用户轻松使用深度学习技术,通过灵活调度按需服务化方式提供模型训练评估与预测。 构建和优化深度学习模型(神经网络机器识图) DSL(Deep Learning Service)是基于华为云强大高性能计算提供一站式深度学习平台服务,内置大量优化的网...

    GHOST_349178 评论0 收藏0
  • Watson使用指南(六)在微信公众号中实现识图作诗功能

    摘要:详见注册微信公众号这个很简单,而且网上一搜很多,我在这里就不说了。关于服务的创建,具体参见使用指南五通过认证公众微信号在微信公众号页面打开开发者页面,进行服务器配置。 本文章主要是写一下这个项目开发的过程及之间遇到的问题,作为记录,也希望以此为契机认识志同道合的朋友,一起学习交流。 目录: 概述 环境准备及相关账号申请 部署Python Flask应用到Bluemix 通过Bluem...

    Pikachu 评论0 收藏0
  • Android使用SurfaceView作为相机预览识图时,视图被拉伸的问题

    摘要:网上已经有很多人提到过,导致这种现象的原因是,传入的相机预览图像长宽比例,与本身大小长宽比例不一致。那么解决方法也非常简单,只要获取一下设备本身支持的相机比例,然后选择其中一个与实际比例经常就是设备的长宽最相近的即可。 网上已经有很多人提到过,导致这种现象的原因是,传入的相机预览图像长宽比例,与SurfaceView本身大小长宽比例不一致。 那么解决方法也非常简单,只要获取一下设备本身...

    Jrain 评论0 收藏0
  • CTFshow 击剑杯 部分WP

    摘要:摆烂了摆烂了太难了聪明的师傅已经组队打起月赛了试试能不能苟住前苟住了复现的后面再补充吧文章目录中文识别带师简单的验证码英语阅读这是哪里卡鲁铁盒人家想玩嘛人有点多小城美食安装热身听歌识曲看图识妹进群得码麻麻的只会一题 ...

    kk_miles 评论0 收藏0
  • 毕业设计 - 题目:基于python的验证码识别 - 机器视觉 验证码识别

    摘要:用到的几个主要的库图像处理库高级图像处理库识别库灰度处理二值化灰度处理,就是把彩色的验证码图片转为灰色的图片。 文章目录 0 前言1 项目简介2 验证码识别步骤2...

    不知名网友 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<