RM新时代网站-首页

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

AI語音識別-我給瀏覽器加了個語音搜索功能

DS小龍哥-嵌入式技術(shù) ? 來源:DS小龍哥-嵌入式技術(shù) ? 作者:DS小龍哥-嵌入式技 ? 2023-07-10 09:18 ? 次閱讀

1. 前言

隨著物聯(lián)網(wǎng)的發(fā)展,語音識別技術(shù)受到越來越多的關(guān)注,語音識別技術(shù)正積極推動信息通信領(lǐng)域的革命,語音撥號,語音郵件,語音輸入乃至語音操控等以語音識別為基礎(chǔ)的人機(jī)交互日益普及.盡管生物識別方式不斷增多,語音識別方式仍是主流方式.與其他生物識別技術(shù)相比,語音識別技術(shù)不僅具有非接觸,非侵入性,使用方便,不會遺失和忘記,不需記憶等特點(diǎn)。

本篇文章就采用華為云提供的在線語音識別服務(wù)給瀏覽器設(shè)計(jì)一個語音自動搜索的功能,編程語言采用C++,軟件框架采用QT設(shè)計(jì),瀏覽器內(nèi)核采用QWebEngineView,在QT5.7以后,QT里就不支持webkit了,目前自帶的瀏覽器內(nèi)核是QWebEngineView,只能使用MSVC編譯編譯,mingw要使用瀏覽器可以單獨(dú)下載webkit的庫,或者使用COM組件調(diào)用IE瀏覽器,當(dāng)前文章里使用的瀏覽器是QWebEngineView,編譯器采用VS2017,32bit。

語音采集功能使用QT的QAudioInput類來實(shí)現(xiàn),采集聲卡的PCM數(shù)據(jù),保存起來,通過華為云的語音識別HTTP接口完成文字識別,得到文字后再通過瀏覽器進(jìn)行搜索文字相關(guān)內(nèi)容。

實(shí)現(xiàn)效果如下:

image-20220106190739135

點(diǎn)擊界面上的 ”開始語音采集“按鈕,就可以說話,說完點(diǎn)擊停止采集,然后調(diào)用華為云的語音識別接口進(jìn)行語音識別,在下面的顯示框上顯示識別到的文字,然后再完成瀏覽器自動搜索。

image-20220106190855680

image-20220106193216974

2. 創(chuàng)建語音服務(wù)器

2.1 使用語音服務(wù)

登錄華為云官網(wǎng): https://www.huaweicloud.com/

選擇產(chǎn)品-人工智能-語音交互服務(wù)-一句話識別。

image-20220106164835826

短語音識別地址: https://www.huaweicloud.com/product/asr.html

短語音識別是將口述音頻轉(zhuǎn)換為文本,通過API調(diào)用識別不超過一分鐘的不同音頻源發(fā)來的音頻流或音頻文件。適用于語音搜索、人機(jī)交互等語音交互識別場景。 支持免費(fèi)試用。

image-20220106165023581

免費(fèi)試用每日500次。

image-20220106165205406

image-20220106165217533

image-20220106165234937

image-20220106165403583

image-20220106170045851

2.2 HTTP接口使用介紹

文檔地址: https://support.huaweicloud.com/api-sis/sis_03_0094.html

image-20220106170707976

在線調(diào)試接口地址: https://apiexplorer.developer.huaweicloud.com/apiexplorer/doc?product=SIS&api=RecognizeShortAudio

幾個重要的參數(shù):

本地音頻采集的頻率、通道數(shù)都得與參數(shù)匹配。

image-20220106191232190

image-20220106191250256

2.3 接口地址總結(jié)

請求地址: "https://{endpoint}/v1/{project_id}/asr/short-audio"
 ?
 請求數(shù)據(jù):
 {
     "config": {
         "audio_format": "ulaw8k8bit",
         "property": "chinese_8k_common",
         "add_punc": "yes",
         "digit_norm": "yes",
         "need_word_info": "yes"
     },
     "data": "/+MgxAAUeHpMAUkQAANhuRAC..."
 }
 ?
 請求頭里要帶: X-Auth-Token 參數(shù)

請求數(shù)據(jù)里的參數(shù)在前面截圖里介紹了,data就是音頻文件的base64編碼數(shù)據(jù)。

請求地址里的endpoint字段、project_id字段、還有X-Auth-Token字段只要是訪問華為云的任何API接口都需要填,獲取方法看這里: https://bbs.huaweicloud.com/blogs/317759 翻到2.3小節(jié)。

image-20220106192419443

識別成功返回的數(shù)據(jù):

{
   "trace_id": "567e8537-a89c-13c3-a882-826321939651",
   "result": {
     "text": "歡迎使用語音云服務(wù)。",
     "score": 0.9,
     "word_info": [
       {
         "start_time": 150,
         "end_time": 570,
         "word": "歡迎"
       },
       {
         "start_time": 570,
         "end_time": 990,
         "word": "使用"
       },
       {
         "start_time": 990,
         "end_time": 1380,
         "word": "語音"
       },
       {
         "start_time": 1380,
         "end_time": 1590,
         "word": "云"
       },
       {
         "start_time": 1590,
         "end_time": 2070,
         "word": "服務(wù)"
       }
     ]
   }
 }

其中的text字段就是識別的文本數(shù)據(jù)。

3. 項(xiàng)目代碼示例

下面列出核心的代碼,主要是就是字符串拼接格式,拼接完發(fā)送http請求即可。

3.1 語音轉(zhuǎn)文字請求代碼

//語音轉(zhuǎn)文本
 void Widget::audio_to_text(QByteArray data)
 {
     function_select=0;
 ?
     QString requestUrl;
     QNetworkRequest request;
 ?
     //存放文件的BASE64編碼
     QString base64_Data;
 ?
     //設(shè)置請求地址
     QUrl url;
 ?
     //一句話識別的請求地址
     requestUrl = QString("https://sis-ext.%1.myhuaweicloud.com/v1/%2/asr/short-audio")
             .arg(SERVER_ID)
             .arg(PROJECT_ID);
     qDebug()< "requestUrl:"<

3.2 更新token代碼

/*
 功能: 獲取token
 */
 void Widget::GetToken()
 {
     //表示獲取token
     function_select=3;
 ?
     QString requestUrl;
     QNetworkRequest request;
 ?
     //設(shè)置請求地址
     QUrl url;
 ?
     //獲取token請求地址
     requestUrl = QString("https://iam.%1.myhuaweicloud.com/v3/auth/tokens")
                  .arg(SERVER_ID);
 ?
     //自己創(chuàng)建的TCP服務(wù)器,測試用
     //requestUrl="http://10.0.0.6:8080";
 ?
     //設(shè)置數(shù)據(jù)提交格式
     request.setHeader(QNetworkRequest::ContentTypeHeader, QVariant("application/json;charset=UTF-8"));
 ?
     //構(gòu)造請求
     url.setUrl(requestUrl);
 ?
     request.setUrl(url);
 ?
     QString text =QString("{"auth":{"identity":{"methods":["password"],"password":"
     "{"user":{"domain": {"
     ""name":"%1"},"name": "%2","password": "%3"}}},"
     ""scope":{"project":{"name":"%4"}}}}")
             .arg(MAIN_USER)
             .arg(IAM_USER)
             .arg(IAM_PASSWORD)
             .arg(SERVER_ID);
 ?
     //發(fā)送請求
     manager- >post(request, text.toUtf8());
 }

3.3 華為云返回的結(jié)果處理

//解析反饋結(jié)果
 void Widget::replyFinished(QNetworkReply *reply)
 {
     QString displayInfo;
     int statusCode = reply- >attribute(QNetworkRequest::HttpStatusCodeAttribute).toInt();
 ?
     //讀取所有數(shù)據(jù)
     QByteArray replyData = reply- >readAll();
 ?
     qDebug()< "狀態(tài)碼:"<

審核編輯:湯梓紅

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • 物聯(lián)網(wǎng)
    +關(guān)注

    關(guān)注

    2909

    文章

    44557

    瀏覽量

    372748
  • AI
    AI
    +關(guān)注

    關(guān)注

    87

    文章

    30728

    瀏覽量

    268873
  • 語音識別
    +關(guān)注

    關(guān)注

    38

    文章

    1739

    瀏覽量

    112632
  • 瀏覽器
    +關(guān)注

    關(guān)注

    1

    文章

    1022

    瀏覽量

    35325
  • 華為云
    +關(guān)注

    關(guān)注

    3

    文章

    2445

    瀏覽量

    17406
收藏 人收藏

    評論

    相關(guān)推薦

    11你應(yīng)當(dāng)使用FIREFOX瀏覽器的理由

    安全。與IE不同的是,火狐不允許瀏覽器安裝ActiveX控件 。 ActiveX其實(shí)是一可以在線更新Internet Explorer和Windows 的程序。但是它也一非常大的危險(xiǎn),那就是為
    發(fā)表于 11-26 16:31

    CES熱門技術(shù):語音識別

    ”理念,通過語音控制、動作控制和面部識別等技術(shù)手段,實(shí)現(xiàn)智能用戶與智能電視間的互動關(guān)聯(lián)。用戶只需要簡單地說聲“你好,電視”(Hi, TV)就可以開啟語音控制,說聲“網(wǎng)絡(luò)瀏覽器”(Web
    發(fā)表于 02-06 13:27

    1小時(shí)玩轉(zhuǎn)AI語音識別

    的海報(bào),便可獲得:1、免費(fèi)觀看直播特權(quán)2、參與直播互動可得一份【AI語音及人臉識別系統(tǒng)開發(fā)文檔教程】。本群限時(shí)開放400人參加,活動截止到2018年9月20日,福利將在活動結(jié)束三工作
    發(fā)表于 09-19 13:40

    直播福利:1小時(shí)玩轉(zhuǎn)AI語音識別

    的海報(bào),便可獲得:1、免費(fèi)觀看直播特權(quán)2、參與直播互動可得一份【AI語音及人臉識別系統(tǒng)開發(fā)文檔教程】。本群限時(shí)開放400人參加,活動截止到2018年9月20日,福利將在活動結(jié)束三工作
    發(fā)表于 09-19 13:46

    AI語音智能機(jī)器人開發(fā)實(shí)戰(zhàn)

    設(shè)計(jì)、再到現(xiàn)場寫代碼實(shí)現(xiàn)每一子模塊的功能,一步步帶領(lǐng)大家開發(fā)出一款可量產(chǎn)的商用AI語音智能陪護(hù)機(jī)器人。學(xué)完整個課程,大家能夠全面掌握AI
    發(fā)表于 01-04 11:48

    通用型AI語音識別芯片音旋風(fēng)611如何?

    近日,國產(chǎn)原生芯片品牌探境科技宣布全球首款通用型AI語音識別芯片——音旋風(fēng)611(英文名稱:Voitist611)目前正式進(jìn)入批量供貨量產(chǎn)并已獲得大量客戶的認(rèn)可和采用。這款芯片將適用于各種需要
    發(fā)表于 09-11 11:52

    設(shè)計(jì)一語音識別的模塊

    大,準(zhǔn)備識別的最大范圍能不能達(dá)到5米,或者說極限能夠達(dá)到幾米3:支持485長距離通訊4:可多個串聯(lián),只要一模塊識別語音,就觸發(fā)動作。或者是多個
    發(fā)表于 09-12 22:34

    語音識別】你知道什么是離線語音識別和在線語音識別嗎?

    率是可以達(dá)到90%以上的;而對于一些不連接網(wǎng)絡(luò)的產(chǎn)品,如:移動照明,按摩等,離線語音識別比在線的就更加適合,而且從價(jià)格方面來說,離線語音識別
    發(fā)表于 04-01 17:11

    自制基于ESP32的語音識別模塊

    來調(diào)試模塊,也可以通過UART接口對接單片機(jī)、arduino、DSP、FPGA等硬件,方便您實(shí)現(xiàn)語音識別功能。語音識別模塊背面
    發(fā)表于 08-24 15:03

    【開發(fā)教程11】AI語音人臉識別(會議記錄儀-人臉打卡機(jī))-AI語音系統(tǒng)架構(gòu)

    傳送到CC3200,CC3200通過wifi把采集到的語音信號發(fā)送給服務(wù),服務(wù)再使用百度AI語音識別
    發(fā)表于 05-20 15:35

    【開發(fā)教程11】瘋殼·AI語音人臉識別(會議記錄儀-人臉打卡機(jī))-AI語音系統(tǒng)架構(gòu)

    傳送到CC3200,CC3200通過wifi把采集到的語音信號發(fā)送給服務(wù),服務(wù)再使用百度AI語音識別
    發(fā)表于 07-30 19:06

    【CC3200AI實(shí)驗(yàn)教程11】瘋殼·AI語音人臉識別-AI語音系統(tǒng)架構(gòu)

    傳送到CC3200,CC3200通過wifi把采集到的語音信號發(fā)送給服務(wù),服務(wù)再使用百度AI語音識別
    發(fā)表于 08-30 14:54

    請問語音識別如何停止?

    現(xiàn)在整合了語音識別和音樂播放功能,識別到喚醒詞
    發(fā)表于 03-10 08:31

    語音控件引入了火狐Firefox瀏覽器

    Firefox Voice 是 Mozilla 的一項(xiàng)新實(shí)驗(yàn),剛剛作為 Beta 版本發(fā)布。該實(shí)驗(yàn)將語音控件引入 Firefox Web 瀏覽器,目前僅適用于桌面版 Firefox。
    的頭像 發(fā)表于 01-13 09:20 ?1458次閱讀

    語音數(shù)據(jù)集在智能語音搜索中的應(yīng)用與挑戰(zhàn)

    揮著重要作用,為系統(tǒng)提供了豐富的語音數(shù)據(jù)和信息,提高了搜索的準(zhǔn)確性和效率。本文將詳細(xì)介紹語音數(shù)據(jù)集在智能語音搜索中的應(yīng)用、面臨的挑戰(zhàn)以及未來
    的頭像 發(fā)表于 01-18 15:09 ?542次閱讀
    RM新时代网站-首页