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

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

3天內不再提示

AI語(yǔ)音識別-我給瀏覽器加了個(gè)語(yǔ)音搜索功能

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

1. 前言

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

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

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

實(shí)現效果如下:

image-20220106190739135

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

image-20220106190855680

image-20220106193216974

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

2.1 使用語(yǔ)音服務(wù)

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

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

image-20220106164835826

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

短語(yǔ)音識別是將口述音頻轉換為文本,通過(guò)API調用識別不超過(guò)一分鐘的不同音頻源發(fā)來(lái)的音頻流或音頻文件。適用于語(yǔ)音搜索、人機交互等語(yǔ)音交互識別場(chǎng)景。 支持免費試用。

image-20220106165023581

免費試用每日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

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

幾個(gè)重要的參數:

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

image-20220106191232190

image-20220106191250256

2.3 接口地址總結

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

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

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

image-20220106192419443

識別成功返回的數據:

{
   "trace_id": "567e8537-a89c-13c3-a882-826321939651",
   "result": {
     "text": "歡迎使用語(yǔ)音云服務(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": "語(yǔ)音"
       },
       {
         "start_time": 1380,
         "end_time": 1590,
         "word": "云"
       },
       {
         "start_time": 1590,
         "end_time": 2070,
         "word": "服務(wù)"
       }
     ]
   }
 }

其中的text字段就是識別的文本數據。

3. 項目代碼示例

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

3.1 語(yǔ)音轉文字請求代碼

//語(yǔ)音轉文本
 void Widget::audio_to_text(QByteArray data)
 {
     function_select=0;
 ?
     QString requestUrl;
     QNetworkRequest request;
 ?
     //存放文件的BASE64編碼
     QString base64_Data;
 ?
     //設置請求地址
     QUrl url;
 ?
     //一句話(huà)識別的請求地址
     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;
 ?
     //設置請求地址
     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";
 ?
     //設置數據提交格式
     request.setHeader(QNetworkRequest::ContentTypeHeader, QVariant("application/json;charset=UTF-8"));
 ?
     //構造請求
     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 華為云返回的結果處理

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

審核編輯:湯梓紅

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

    關(guān)注

    2880

    文章

    42149

    瀏覽量

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

    關(guān)注

    87

    文章

    27205

    瀏覽量

    264963
  • 語(yǔ)音識別
    +關(guān)注

    關(guān)注

    38

    文章

    1652

    瀏覽量

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

    關(guān)注

    1

    文章

    1003

    瀏覽量

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

    關(guān)注

    3

    文章

    2211

    瀏覽量

    16947
收藏 人收藏

    評論

    相關(guān)推薦

    11個(gè)你應當使用FIREFOX瀏覽器的理由

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

    CES熱門(mén)技術(shù):語(yǔ)音識別

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

    1小時(shí)玩轉AI語(yǔ)音識別

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

    直播福利:1小時(shí)玩轉AI語(yǔ)音識別

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

    AI語(yǔ)音智能機器人開(kāi)發(fā)實(shí)戰

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

    基于MSP432 MCU的語(yǔ)音識別設計概述

    示了這個(gè)功能。TI還發(fā)布了一個(gè)用C語(yǔ)言代碼編寫(xiě)的語(yǔ)音識別庫,這個(gè)庫使得基于MSP432 MCU的應用能夠
    發(fā)表于 07-30 04:45

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

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

    設計一個(gè)語(yǔ)音識別的模塊

    大,準備識別的最大范圍能不能達到5米,或者說(shuō)極限能夠達到幾米3:支持485長(cháng)距離通訊4:可多個(gè)串聯(lián),只要一個(gè)模塊識別語(yǔ)音,就觸發(fā)動(dòng)作?;蛘呤嵌鄠€(gè)語(yǔ)
    發(fā)表于 09-12 22:34

    語(yǔ)音識別】你知道什么是離線(xiàn)語(yǔ)音識別和在線(xiàn)語(yǔ)音識別嗎?

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

    自制基于ESP32的語(yǔ)音識別模塊

    來(lái)調試模塊,也可以通過(guò)UART接口對接單片機、arduino、DSP、FPGA等硬件,方便您實(shí)現語(yǔ)音識別功能。語(yǔ)音識別模塊背面
    發(fā)表于 08-24 15:03

    【開(kāi)發(fā)教程11】AI語(yǔ)音人臉識別(會(huì )議記錄儀-人臉打卡機)-AI語(yǔ)音系統架構

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

    【開(kāi)發(fā)教程11】瘋殼·AI語(yǔ)音人臉識別(會(huì )議記錄儀-人臉打卡機)-AI語(yǔ)音系統架構

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

    【CC3200AI實(shí)驗教程11】瘋殼·AI語(yǔ)音人臉識別-AI語(yǔ)音系統架構

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

    請問(wèn)語(yǔ)音識別如何停止?

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

    語(yǔ)音數據集在智能語(yǔ)音搜索中的應用與挑戰

    揮著(zhù)重要作用,為系統提供了豐富的語(yǔ)音數據和信息,提高了搜索的準確性和效率。本文將詳細介紹語(yǔ)音數據集在智能語(yǔ)音搜索中的應用、面臨的挑戰以及未來(lái)
    的頭像 發(fā)表于 01-18 15:09 ?278次閱讀
    亚洲欧美日韩精品久久_久久精品AⅤ无码中文_日本中文字幕有码在线播放_亚洲视频高清不卡在线观看