本次sprint主要完成的任务有对手机APP的UI界面的更新,同时对Azure客户端的部署进行了相应的学习和有关的程序设计。同时对于ALPHA release的用户反馈做出相应的分析以确定接下来工作的重点。

工作进度:

1. UI 的界面更新和完善工作主要由兆阳负责,主要是对APP中的自动标签和浏览布局进行了相应的改进。其中大部分与Sprint2中的界面有所区别,并且对整体的APP工作性能有了一些改善。相应的改进feature有如下:

1). 个人活动分类浏览: 其中将用户的各个照片依据内容,时间,地点信息进行分类。从而使用户可以依据不同的活动类型对照片进行浏览,方便用户体验。

2). 搜索推荐: 对于用户所输入的词句进行预测,并且推荐相应图片的缩略图,方便用户在无法准确拼写相应单词的时候可以进行精确的搜索。

3). 语音搜索: 利用 oxford Speech API 与 Stanford NLP API 的结合, 成功实现了语音模糊搜索的功能。用户可以直接说一段句子,利用 oxford Speech API 实现语音到文本的转换,随后利用 Stanford NLP API 对文本中的关键词进行提取以用作最后搜索的关键词。

4). 自动标签生成: 利用流行的深度神经网络模型CNN对图片进行处理,同时进行相应的分类生成相应的标签。同时对图片已有的GPS,拍摄时间等信息也进行相应的保留和布局处理以方便用户浏览。

                   

2. 同时后台处理进行了相应的优化, 主要是有将NLP的resful从eclipse环境中转移到Tom Cat,这部分由敏龙负责。

3. 相应的代码整合工作则focus在一些线程处理机制上面的优化,同时对讲代码转移到IOS系统上进行了一定的尝试,这些工作主要由拂尘和延东负责。

4. 在Azure Server部署方面,首先对Azure架构进行了学习,同时在部署方面做了相应的尝试,这一部分主要由栋和延东负责。

Azure 端部署情况分析:

Azure端的部署工作目前处于尝试阶段,在接到相应的用户反馈以后,我们通过相应的分决定将Azure端产品作为一个中间过渡产物,最终工作将转向对APP的offline版本的新的尝试。

用户反馈结果分析:

有相应用户拥有如下评论:

1. 对于这款手机APP,我有时上传照片收到网速的限制,无法迅速获得结果。而且总体来所返回的图片结果还是不错的,但是有一些还是不是特别理想。用户活动分类这个特别合口味,为我浏览相应的照片省去了不少麻烦!

2. 总体性能不错,细节还是可以的。不过有时候会返回莫名其妙的一些结果,比较无语啦~

对于以上两位用户评论进行分析可以得出如下一些可以改进的地方:

1. 利用流行的CNN模型在实际运用中不能简单套用,也许可以通过相应的阈值或者简单的操作暗示进行用户体验的提升。

2. 在线版本受网速等其他因素的限制,同时实现上也相当复杂,以长远眼光来看,这确实是个不错的选择。但就目前要想短期实现相同性能,完成CNN的IOS模型架构建立,实属不易。offline版本或许会成为最终的目标,但绝不会是本次课程最后的结果。软件开发之路任重道远,一蹴而就或许只会物极必反。

Sprint 5 summary: UI 界面更新,Azure端部署和用户反馈分析 12/28/2015的更多相关文章

  1. 为什么丑陋的UI界面却能创造良好的用户体验?

    本文内容由Mockplus团队翻译. 官网:http://www.mockplus.cn 网站界面过于漂亮可能会影响网站的可用性,但本文中提到的5个网站界面可谓是“丑”出了新高度.这样的网站它还有可用 ...

  2. Spark UI界面原理

    当Spark程序在运行时,会提供一个Web页面查看Application运行状态信息.是否开启UI界面由参数spark.ui.enabled(默认为true)来确定.下面列出Spark UI一些相关配 ...

  3. Python+PyQT5的子线程更新UI界面的实例《新手必学》

    今天小编就为大家分享一篇Python+PyQT5的子线程更新UI界面的实例,具有很好的参考价值,希望对大家有所帮助.一起跟随小编过来看看吧子线程里是不能更新UI界面的,在移动端方面.Android的U ...

  4. 使用AsyncTask异步更新UI界面及原理分析

    概述: AsyncTask是在Android SDK 1.5之后推出的一个方便编写后台线程与UI线程交互的辅助类.AsyncTask的内部实现是一个线程池,所有提交的异步任务都会在这个线程池中的工作线 ...

  5. 在Android中实现service动态更新UI界面

    之前曾介绍过Android的UI设计与后台线程交互,据Android API的介绍,service一般是在后台运行的,没有界面的.那么如何实现service动态更新UI界面呢?案例:通过service ...

  6. Android异步处理一:使用Thread+Handler实现非UI线程更新UI界面

    Android应用的开发过程中需要把繁重的任务(IO,网络连接等)放到其他线程中异步执行,达到不阻塞UI的效果. 下面将由浅入深介绍Android进行异步处理的实现方法和系统底层的实现原理. 本文介绍 ...

  7. Android Handler传递参数动态更新UI界面demo

    package com.example.demo_test; import android.app.Activity; import android.os.Bundle; import android ...

  8. 一种WPF在后台线程更新UI界面的简便方法

    WPF框架规定只有UI线程(主线程)可以更新界面,所有其他后台线程无法直接更新界面.幸好,WPF提供的SynchronizationContext类以及C#的Lambda表达式提供了一种方便的解决方法 ...

  9. Android异步处理系列文章四篇之二 使用AsyncTask异步更新UI界面

    Android异步处理一:使用Thread+Handler实现非UI线程更新UI界面Android异步处理二:使用AsyncTask异步更新UI界面Android异步处理三:Handler+Loope ...

随机推荐

  1. [Docker03] Deploy LNMP on Docker

    Deploy MYSQL docker pull mysql 挂载卷保存数据文件 mkdir -p /mysql/data chmod -p 777 /mysql/data MySQL使用过程中的环境 ...

  2. java后台调用文件上传接口

    借鉴:https://blog.csdn.net/yjclsx/article/details/70675057 /** * 调用流程上传文件接口上传文件 * @param url * @param ...

  3. OS第1次实验报告:熟悉使用Linux命令和剖析ps命令

    零.个人信息 姓名:陈韵 学号:201821121053 班级:计算1812 一.实验目的 熟悉Linux命令行操作 二.实验内容 使用man查询命令使用手册 基本命令使用 三.实验报告 1. 实验环 ...

  4. 负载均衡器nginx和ribbon区别

    1,nginx 是服务器端的负载均衡器,所有请求发送到nginx之后,nginx通过反向代理的功能分发到不同的服务器,做负载均衡 2,ribbon是客户端的负载均衡器,他是通过将eureka注册中心上 ...

  5. Js闭包练习2020031801

    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/stri ...

  6. Django之extra过滤

    extra extra(select=None, where=None, params=None, tables=None, order_by=None, select_params=None) 有些 ...

  7. bootstrip CSS

    什么是网格(Grid)? 摘自维基百科: 在平面设计中,网格是一种由一系列用于组织内容的相交的直线(垂直的.水平的)组成的结构(通常是二维的).它广泛应用于打印设计中的设计布局和内容结构.在网页设计中 ...

  8. Redis 笔记(一)——数据类型简介

    Redis 是一个 key-value 存储系统,但是它的 value 值不仅仅可以存储字符串,value 共有 五种 数据结构类型,具体如下: 数据结构类型 结构类型 结构存储的值 结构的读写能力 ...

  9. Zabbix报警机制,Zabbix进阶操作,监控案例

                                                                                                        ...

  10. php--一些有用的Laravel辅助函数

    str_start()/str_finish() 将指定值添加到字符串的开头/结尾(当不是以该值开头/结尾时) blank() 判断给定的值是否为「空」 collect() 根据给定的数组创建一个集合 ...