闭关数日研发智能玩具小绿亲子

项目初衷(目的):
增加孩子与父母感情
给孩子一个美好的童年
增加与孩子的互动量
帮助孩子成长
通讯
控制玩具播放内容
初衷目的:
为了解决留守儿童与父母长期沟通存在的障碍及问题,只要有3G网络,就能够让孩子随时随地与父母沟通,从而达到维系亲情的目的
陪伴儿童玩耍和成长,可以播放幼教内容引导孩子树立正确的价值观,解答孩子成长中的问题
培养孩子主动社交能力,玩具可以代替电话与其他小伙伴沟通

项目描述:
项目背景:
越来越多的父母在异地打工,长时间与子女分隔交流沟通关心的时间越来越少,留守儿童的问题日益严重
为此类留守儿童家庭的问题,提供解决方案
小孩都喜欢玩具,此产品外形是更热门的玩偶IP,超级飞侠,喜洋洋,熊出没等
小孩的成长需要更多的知识,每一个孩子都是一本10万个为什么,此产品拥有一个强大的百科问答库
小孩想念父母,父母想念小孩,就算是亲情也同样需要维系,此产品拥有无障碍沟通的即时通讯功能,全天候为您提供消息的及时传递
小孩的睡前故事,是每天建立小小世界观的入口,此产品拥有中国某知名内容提供商的优质故事,儿歌等幼教内容资源

项目功能:
陪伴(聊天机器人) - 玩具可以充当孩子的玩伴,以孩子的口吻进行简单的沟通
问答百科 - 玩具可以充当小老师,帮助孩子回答成长中遇到的种种问题,甚至你都不知道答案的问题
智能故事机 - 小孩子可以通过语音指令点播内容库中所有的内容,家长也可以为App推送给玩具播放内容
无屏社交(语音即时通讯) - 孩子可以通过语音指令开启与好友的沟通窗口,通过语音消息的方式发送给好友,家长可以通过App录制语音消息发送给玩具
儿童社交圈 - 玩具与玩具之间的语音即时通讯,孩子与孩子之间可以通过玩具相互发送语音消息,产品卖点之一,也是能够迅速增长产品销售数量的主要功能之一

 1、环境搭建

安装包资料准备:

 安装visualcppbuildtools_full

安装模块pip install freeze -i https://mirrors.aliyun.com/pypi/simple/

安装多个模块pip install -r C:\Users\zd\Desktop\requirements.txt -i https://mirrors.aliyun.com/pypi/simple/

导入pycharm配置文件settings

 2、安装MongoDB

在D盘建立mongodb文件夹

安装mongodb-win32-x86_64-2008plus-3.4.24-signed

 

 next

 指定 MongoDB 数据存储目录D盘下面建立d:/MongoData/db文件夹、data文件夹、log文件夹

以管理员身份运行命令提示符并 进入D:\mongodb\bin目录安装MongoDB数据库服务:

 输入命令:mongod --logpath D:\MongoData\log\mongodb.log --logappend --dbpath D:\MongoData\db  --directoryperdb --serviceName MongoDB --install

 MongoDB服务安装成功

 3、安装redis服务

以管理员身份运行命令提示符并 进入D:\小绿亲子\小绿亲子\Redis-x64-3.2.100

 输入命令:redis-server --service-install redis.windows.conf --loglevel notice --service-name Redis

 

4、数据来源:

喜马拉雅音频一千零一夜:https://www.ximalaya.com/album/424529

Get请求url header -> User-Agent:
xm-sign 获取Get请求时会出现异常
通过 分享页面 -> "加载更多"按钮点击之后 -> 获得一个 URL 可以获取整个专辑所有的内容 -> 内容的名称 音频内容 图片内容

保存内容存储
cover 存储 内容图片
music 存储 内容音频

 

 

数据库
contents 存储内容数据
{
"title" : "内容名称",
"music" : "音频内容名称.mp3",
"cover" : "图片内容名称.jpg",
"tag" : "分类标签",
"creatTime" : "内容创建时间"
}

创建App 项目 并 把幼教内容 展示在首页上
1.Mui + H5+
2.使用Post 方式获取内容列表
@get_anything.route("/get_cover/<filename>")
def get_cover(filename):
file_path = os.path.join(COVER_PATH, filename)
return send_file(file_path)

3.App 遍历 内容列表 展示内容资源 图片 文字
function create_content(content){
//li标签创建
var li = document.createElement("li");
li.className = "mui-table-view-cell mui-media";
//创建a标签
var a = document.createElement("a");
a.addEventListener("tap",function(){
// console.log(content.title);
mui.openWindow({
url:"player.html",
id:"player.html",
extras:content
})
})

//创建img标签
var img = document.createElement("img");
img.className = "mui-media-object mui-pull-left";
img.src = window.serv_image + content.cover;
//创建div标签
var div = document.createElement("div");
div.className = "mui-media-body";
div.innerText = content.title;
//创建p标签
var p = document.createElement("p");
p.className = "mui-ellipsis";
p.innerText = content.title;

//创建Dom层级结构
li.appendChild(a);
a.appendChild(img);
a.appendChild(div);
div.appendChild(p);

//取出 content_list 这个 ul 的Dom对象
document.getElementById("content_list").appendChild(li);
}

 数据库存储脚本

 自动化爬取脚本

 APP页面展示效果

App播放音频
1.创建新页面构建Player对象
<audio controls id="player" autoplay>

</audio>

2.通过Get 方式获取 音频内容
@get_anything.route("/get_music/<filename>")
def get_music(filename):
file_path = os.path.join(MUSIC_PATH, filename)
return send_file(file_path)

 播放音乐界面

 登录、注册、自动登录

 APP效果

 

 聊天功能

 APP效果

智能玩具的项目:
目的:关爱留守儿童, 让玩具成为父母间沟通的媒介, 建立沟通的桥梁,让玩具成为孩子的玩伴
实现无屏社交,依靠孩子的语音指令做出响应,例如我要和爸爸聊天,玩具会提示可以和爸爸聊天了并打开与app通讯的链接
我要听世上只有妈妈好,玩具就会依照指令播放相应的内容

2.说说智能玩具有什么功能:
功能: 玩具可以语音点播朗诵诗歌,播放音乐,做游戏-成语接龙,与智能机器人聊天
与手机app 的im通讯 ,手机app可以为玩具点播歌曲,玩具与玩具之间的通讯

3.智能部分使用了什么算法:
两种回答:
1.使用百度ai中的语音合成和语音识别,点播功能是使用Gensim库进行训练的,聊天做游戏是用的图灵机器人+百度语音合成
2.使用百度ai中的语音合成和语音识别 NLP自然语言处理 点播功能基于百度NLP,聊天做游戏是用的图灵机器人+百度语音合成

4.语音IM通讯是怎么实现的:
通过http传输音频文件,将音频文件保存在服务器中,并将聊天信息存储在服务器中
再通过Websocket进行实时通讯,收到消息之后第一时间去服务器中查询聊天信息

5.手机app是怎么做的(使用什么方式):
使用MUI 前端布局
使用HTML5PLUS 完成系统硬件驱动调用 (摄像头,麦克风等)

6.谈谈你对人工智能的理解(说出人工智能技术的关键字至少5个):
语音类 : 语音识别 语音合成
图像类 : 图像识别 文字识别 人脸识别 视频审核
语言类 : 自然语言处理 机器翻译 词法分析 依存句法分析 文本纠错 对话情绪识别 词向量表示 短文本相似度
词义相似度 情感倾向分析

7.mongodb相关:
1.修改器: $push $set $pull $inc $pop
2.说说你对 $ 的理解 : $ 我的理解就是代指符号,代指所查询到的数据或索引位置
3.Mongodb中的数据类型 : ObjectID String Boolean Integer Double Arrays Object(Dict) Null Timestamp Date
4.mongodb的比较符 : $lt $gt $lte $gte ":"

9.项目不做底层,只使用三方的原因:
制作底层大量占用人力,公司资金不足以支撑底层研发
将大量成本投入到硬件研发中

10.百度AI是网络请求,那如果出现延迟,怎么处理:
百度响应默认超时2秒,返回给用户语音识别失败

11.关于用户体验问题:
非极端情况下,用户会在3秒内得到响应的结果

功能实现:
1.基于Websocket实现语音IM通讯
2.基于MUI实现app移动端应用布局
3.基于HTML5PLUS实现移动操作系统的硬件驱动调用及系统调用
4.基于MongoDB实现数据存储
5.基于Redis实现离线消息存储
6.基于BaiduAI开放技术实现语音合成和语音识别
7.基于gensim LSIModel 语言模型实现词语训练
8.基于gensim 稀疏矩阵相似度实现文本相似度匹配
9.基于jieba 实现语音指令分词
10.基于pypinyin 实现中文同音字识别

 最后APP打包:

发行-原声APP云打包

 

 

 

posted @ 2022-02-04 19:35  干it的小张  阅读(57)  评论(0编辑  收藏  举报