基于Linux的智能聊天与控制设计(毕业设计总结)

功能:

1).通过语音控制家庭里面家居的开关。(2).通过简单的人机交互,把各种传感器检测到家庭环境数据,比如说温室度,光照强度等数据,通过语音播报出来,让人通过智能化得知自己生活环境家居。(3).智能提醒,用户通过语音设置好家庭环境的阈值,一旦超过阈值,语音会自动播报。(4).个性化聊天(图灵机器人),建立个人语音库,可以根据个人的语言习惯,和家庭用户进行个性化的语音聊天,来达到人性化聊天。

语音合成与语音识别都是百度的平台

问题一:库函数与头文件的关系

又犯了一个常识的问题,我在安装语言合成与识别时,只将头文件复制在目录下面,没有安装库函数,有头文件,没有库函数,链接的时候会出错。

问题二:

g++ -o main main.cpp -std=c++11 -lcurl -ljsoncpp -lcrypto

后面的-lcurl.......

就是-lname 的格式:链接 名字为libname.a(静态库)和或者libname.so(动态库)的库文件,若两个库都存在,则根据编译方式(-static还是shared)而进行链接。

问题三:

  数据请求的格式都是json格式

eg:图灵机器人的请求格式如下图

所以定义了一个const char *str = " { \
     \"reqType\":0,\
     \"perception\": {\
         \"inputText\": {\
             \"text\": \"你好 图灵机器人" \
         },\
     },\
     \"userInfo\": {\
         \"apiKey\":\"66d04ab775cb4155ba5704fdd1587438\",\
         \"userId\": \"123\"\
     }\
 }";

为什么要加\,因为不加\   有以下问题:1.换行后的空格因为是字符指针,无法消掉,以用\充当转义字符,把上面和下面字符串连接起来

2.就是char * a=" "abcde" "; 这样会编译不通过的 必须要加\" char * a=" \"abcde\" ";

{
	"reqType":0,
    "perception": {
        "inputText": {
            "text": "附近的酒店"
        },
        "inputImage": {
            "url": "imageUrl"
        },
        "selfInfo": {
            "location": {
                "city": "北京",
                "province": "北京",
                "street": "信息路"
            }
        }
    },
    "userInfo": {
        "apiKey": "",
        "userId": ""
    }
}

问题四:

有这样的头文件 #include

在ubuntu下面头文件默认路径在 usr/include,usr/lib/include,usr/local/include。

这样写的意思在默认路径下找jsoncpp目录下json目录下的json.h头文件

 百度语音识别和合成:等我整理好了 ,传到github.

最后我的毕业设计算结束了

最后有点伤感,大学就这样结束了 特别感谢我的同学杨超 一路的比赛和我作伴,特别是电赛。

你可能感兴趣的:(linux)