一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

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

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

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

手語(yǔ)翻譯系統(tǒng)系列之使用旭日X3派實(shí)時(shí)識(shí)別播報(bào)手語(yǔ)

地瓜機(jī)器人 ? 2022-12-20 09:24 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

一、準(zhǔn)備工作

硬件部分:旭日X3派,USB免驅(qū)攝像頭,電源適配器,燒錄Ubuntu系統(tǒng)的SD卡,USB揚(yáng)聲器,顯示屏(或者VNC/SSH遠(yuǎn)程連接)

軟件部分:Thonny IDE集成開(kāi)發(fā)環(huán)境

1.jfif

首先,關(guān)于Ubuntu系統(tǒng)鏡像的燒錄官方有詳細(xì)的教程,這里不再贅述,我自己是選擇桌面Ubuntu 20.04,大家選擇最新的即可。如果是第一次進(jìn)入系統(tǒng),記得使用命令行更新一下軟件源等,使用快捷鍵ctrl+alt+T打開(kāi)命令行,輸入以下命令:

# 更新軟件源 apt-get update # 更新升級(jí)所有軟件 apt-get upgrade

接下來(lái)就可以開(kāi)始安裝Thonny IDE,作為一款輕量化的python集成開(kāi)發(fā)環(huán)境,對(duì)新手十分友好,簡(jiǎn)單易上手,后續(xù)安裝各種python依賴庫(kù)也相當(dāng)方便。安裝方式Thonny官方網(wǎng)址提供了三種Linux的命令行下載方式,大家可以根據(jù)自己的情況進(jìn)行選擇。

flatpak install org.thonny.Thonny //Flatpak sudo apt install thonny //Debian,Raspbian,Ubuntu,Mintand others sudo dnf install thonny //FedoraFedora

耐心等待程序安裝即可,如果中途出現(xiàn)異常大概率是網(wǎng)絡(luò)不穩(wěn)定導(dǎo)致,檢查網(wǎng)絡(luò)連接并再次運(yùn)行命令行即可。由于Ubuntu系統(tǒng)不會(huì)自動(dòng)生成快捷方式,所以安裝成功后在命令行輸入Thonny即可啟動(dòng)IDE。

重頭戲來(lái)了,安裝項(xiàng)目依賴庫(kù)。啟動(dòng)Thonny IDE后,選擇左上方工具>>管理包,根據(jù)附件中提供的程序開(kāi)始安裝python依賴庫(kù)。過(guò)程可能會(huì)比較漫長(zhǎng),這取決于當(dāng)前網(wǎng)絡(luò)情況,還有部分庫(kù)文件可能會(huì)出現(xiàn)下載失敗的情況,請(qǐng)耐心多嘗試幾次。

2.jfif

import os import threading import cv2 import mediapipe as mp import time import torch as t from model import HandModel from tools.landmark_handle import landmark_handle from tools.draw_landmarks import draw_landmarks from tools.draw_bounding_rect import draw_bounding_rect import numpy as np from tools.draw_rect_text import draw_rect_txt from PIL import Image, ImageFont, ImageDraw import pyttsx3 # 大家可以根據(jù)這個(gè)來(lái)添加項(xiàng)目依賴

(PS.cv2是opencv-python的縮寫,在import的時(shí)候采用這種縮寫,但添加庫(kù)的時(shí)候不能直接搜索cv2,而是要打全稱opencv-python。)

二、實(shí)現(xiàn)原理

智能手語(yǔ)識(shí)別系統(tǒng)共包括語(yǔ)音播報(bào)模塊,模型訓(xùn)練模塊,手勢(shì)識(shí)別模塊,文字轉(zhuǎn)寫模塊,一共可識(shí)別播報(bào)“也”、“吸引”、“美麗的”、 “相信”、“的”、“懷疑”、“夢(mèng)想”、“表達(dá)”、“眼睛”、 “給”、“很難”、“有”、“許多”、“我”、“方法”、“不”, “只有”、“超過(guò)”、“請(qǐng)”、“放”、“說(shuō)”、“微笑”、“星星”、“十分”、“看”、“你”等27個(gè)國(guó)家通用手語(yǔ)。

model_path = 'checkpoints/model_test1.pth' label = ["也", "吸引", "美麗的", "相信", "的", "懷疑", "夢(mèng)想", "表達(dá)", "眼睛", "給", "很難","有","許多","我", "方法", "不", "只有", "結(jié)束", "請(qǐng)", "放", "說(shuō)", "微信", "星星", "十分","看","你"]

語(yǔ)音播報(bào)模塊采用pyttsx3第三方庫(kù),它是一個(gè)用于文字轉(zhuǎn)語(yǔ)音的第三方python庫(kù),還可實(shí)現(xiàn)對(duì)音量,聲源,語(yǔ)速的調(diào)整,可脫機(jī)工作,兼容python2和python3

def run(): str_show = this_label star_date = open("2.txt", "w", encoding="utf-8") star_date.write(str_show) star_date.close() star_data = open("2.txt", "r", encoding="utf-8") star_read = star_data.readlines() star_data.close() file = "2.txt" res = open(file, encoding="utf-8").read() engine = pyttsx3.init() content = res engine.say(content) engine.runAndWait() time.sleep(1)

模型訓(xùn)練模塊采用torch第三方庫(kù),torch廣泛運(yùn)用深度學(xué)習(xí)。它能夠幫助我們構(gòu)建深度學(xué)習(xí)項(xiàng)目,強(qiáng)調(diào)靈活性,而且允許使用我們習(xí)慣的python表示方法來(lái)表達(dá)深度學(xué)習(xí)模型。算力高,易學(xué)習(xí),比較容易入門。

# 模型保存地址 targetX = [0 for xx in range(label_num)] target = [] for xx in range(label_num): target_this = copy.deepcopy(targetX) target_this[xx] = 1 target.append(target_this) # 獨(dú)熱碼 lr = 1e-3 # learning rate model_saved = 'checkpoints/model' # 模型定義 model = HandModel() optimizer = t.optim.Adam(model.parameters(), lr=lr) criterion = nn.CrossEntropyLoss() loss_meter = meter.AverageValueMeter() epochs = 40 for epoch in range(epochs): print("epoch:" + str(epoch)) loss_meter.reset() count = 0 allnum = 1 for i in range(len(label)): data = np.load('./npz_files/' + label[i] + ".npz", allow_pickle=True) data = data['data'] for j in range(len(data)): xdata = t.tensor(data[j]) optimizer.zero_grad() this_target = t.tensor(target[i]).float() input_, this_target = Variable(xdata), Variable(this_target) output = model(input_) outLabel = label[output.tolist().index(max(output))] targetIndex = target[i].index(1) targetLabel = label[targetIndex] if targetLabel == outLabel: count += 1 allnum += 1 output = t.unsqueeze(output, 0) this_target = t.unsqueeze(this_target, 0) loss = criterion(output, this_target) loss.backward() optimizer.step() loss_meter.add(loss.data) print("correct_rate:", str(count / allnum)) t.save(model.state_dict(), '%s_%s.pth' % (model_saved, epoch))

準(zhǔn)備好數(shù)據(jù)集就可以開(kāi)始進(jìn)行模型訓(xùn)練,模型推薦在電腦上進(jìn)行訓(xùn)練,我自己的電腦是win10的系統(tǒng),用的pycharm IDE的集成開(kāi)發(fā)環(huán)境,如果只是想體驗(yàn)一下的話也可以直接使用附件里訓(xùn)練好的模型。

3.png

手勢(shì)識(shí)別模塊采用Mediapipe和OpenCV庫(kù)對(duì)人手進(jìn)行特征提取與骨骼綁定,旭日X3派根據(jù)攝像頭捕捉的關(guān)鍵幀的進(jìn)行特征提取,基于PyTorch模型進(jìn)行推理,并將推理翻譯結(jié)果顯示到屏幕上,同時(shí)將翻譯結(jié)果以txt文件形式進(jìn)行保存和API接入后上傳到百度語(yǔ)音開(kāi)發(fā)平臺(tái),由平臺(tái)進(jìn)行人聲的合成,然后將生成的mp3文件下載到旭日X3派終端用揚(yáng)聲器進(jìn)行播放,實(shí)現(xiàn)了為語(yǔ)言障礙人士發(fā)聲,為“礙”發(fā)聲。

# 百度大腦AI開(kāi)放平臺(tái)API接入實(shí)現(xiàn)語(yǔ)音合成的示例 def fetch_token(): print("fetch token begin") params = {'grant_type': 'client_credentials', 'client_id': API_KEY, 'client_secret': SECRET_KEY} post_data = urlencode(params) if (IS_PY3): post_data = post_data.encode('utf-8') req = Request(TOKEN_URL, post_data) try: f = urlopen(req, timeout=5) result_str = f.read() except URLError as err: print('token http response http code : ' + str(err.code)) result_str = err.read() if (IS_PY3): result_str = result_str.decode() print(result_str) result = json.loads(result_str) print(result) if ('access_token' in result.keys() and 'scope' in result.keys()): if not SCOPE in result['scope'].split(' '): raise DemoError('scope is not correct') print('SUCCESS WITH TOKEN: %s ; EXPIRES IN SECONDS: %s' % (result['access_token'], result['expires_in'])) return result['access_token'] else: raise DemoError('MAYBE API_KEY or SECRET_KEY not correct: access_token or scope not found in token response') """ TOKEN end """ if __name__ == '__main__': token = fetch_token() tex = quote_plus(TEXT) # 此處TEXT需要兩次urlencode print(tex) params = {'tok': token, 'tex': tex, 'per': PER, 'spd': SPD, 'pit': PIT, 'vol': VOL, 'aue': AUE, 'cuid': CUID, 'lan': 'zh', 'ctp': 1} # lan ctp 固定參數(shù) data = urlencode(params) print('test on Web Browser' + TTS_URL + '?' + data) req = Request(TTS_URL, data.encode('utf-8')) has_error = False try: f = urlopen(req) result_str = f.read() headers = dict((name.lower(), value) for name, value in f.headers.items()) has_error = ('content-type' not in headers.keys() or headers['content-type'].find('audio/') < 0) except URLError as err: print('asr http response http code : ' + str(err.code)) result_str = err.read() has_error = True save_file = "error.txt" if has_error else 'result.' + FORMAT with open(save_file, 'wb') as of: of.write(result_str) if has_error: if (IS_PY3): result_str = str(result_str, 'utf-8') print("tts api error:" + result_str) print("result saved as :" + save_file) # 骨架綁定的可視化 draw_landmarks(frame, hand_local) brect = draw_bounding_rect(frame, hand_local)

4.png

文字轉(zhuǎn)寫模塊通過(guò)旭日X3派外接麥克風(fēng)進(jìn)行收音,API接入后將錄制的mp3文件上傳,通過(guò)云端語(yǔ)音平臺(tái)實(shí)時(shí)轉(zhuǎn)寫為文字后顯示到旭日X3派終端的屏幕上。最后利用python的多線程將手勢(shì)識(shí)別,語(yǔ)音播報(bào),文字轉(zhuǎn)寫同時(shí)運(yùn)行,至此,實(shí)現(xiàn)了聾啞人士與普通人的雙向無(wú)障礙溝通交流。

三、效果展示

得益于旭日X3派的強(qiáng)大算力,系統(tǒng)對(duì)手勢(shì)的識(shí)別展示并播報(bào)十分靈敏,畫面流程度也得到保障(溫馨提示:長(zhǎng)時(shí)間運(yùn)行請(qǐng)準(zhǔn)備小風(fēng)扇給開(kāi)發(fā)板降溫哦)。

5.jfif


6.jfif

四、性能測(cè)試

系統(tǒng)測(cè)試方案:將訓(xùn)練好模型導(dǎo)入旭日X3派中,接入電源后等待初始化完成,由小組成員們隨機(jī)在鏡頭前做出27個(gè)國(guó)家通用手語(yǔ),將翻譯終端識(shí)別播報(bào)的準(zhǔn)確率記錄,同時(shí)將識(shí)別的總時(shí)長(zhǎng)記錄收集。

測(cè)試數(shù)據(jù)如下:

7.jfif


8.jfif

結(jié)果分析:實(shí)驗(yàn)數(shù)據(jù)表明,27個(gè)國(guó)家通用手語(yǔ)隨機(jī)檢驗(yàn)的識(shí)別準(zhǔn)確率均在90%以上,單次執(zhí)行時(shí)間也均在1秒之內(nèi)。

結(jié)論:手語(yǔ)翻譯終端有很高的實(shí)時(shí)性,充分保障聾啞殘障人士的無(wú)障礙溝通交流。

本文轉(zhuǎn)自地平線開(kāi)發(fā)者社區(qū)
原作者:鑫辰大海王

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

    關(guān)注

    5150

    文章

    19665

    瀏覽量

    317427
  • python
    +關(guān)注

    關(guān)注

    56

    文章

    4827

    瀏覽量

    86708
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    樹(shù)莓分類器:用樹(shù)莓識(shí)別不同型號(hào)的樹(shù)莓!

    在本教程系列的第一部分中,您將學(xué)習(xí)如何使用樹(shù)莓AI攝像頭來(lái)檢測(cè)不同的樹(shù)莓型號(hào)。本系列由DavidPlowman創(chuàng)建,他是樹(shù)莓工程師,專
    的頭像 發(fā)表于 06-13 16:39 ?407次閱讀
    樹(shù)莓<b class='flag-5'>派</b>分類器:用樹(shù)莓<b class='flag-5'>派</b><b class='flag-5'>識(shí)別</b>不同型號(hào)的樹(shù)莓<b class='flag-5'>派</b>!

    樹(shù)莓項(xiàng)目實(shí)戰(zhàn):車牌識(shí)別系統(tǒng)開(kāi)發(fā)全記錄!

    介紹本項(xiàng)目的目標(biāo)是設(shè)計(jì)一個(gè)基于樹(shù)莓微電腦的自動(dòng)車牌識(shí)別系統(tǒng),用于控制停車場(chǎng)的道閘。為什么?我有一臺(tái)閑置的樹(shù)莓,沒(méi)有參與任何項(xiàng)目,還有一臺(tái)攝像頭,以及一個(gè)潛在的問(wèn)題點(diǎn)——辦公室停車場(chǎng)沒(méi)有自動(dòng)化的道
    的頭像 發(fā)表于 06-11 17:22 ?286次閱讀
    樹(shù)莓<b class='flag-5'>派</b>項(xiàng)目實(shí)戰(zhàn):車牌<b class='flag-5'>識(shí)別系統(tǒng)</b>開(kāi)發(fā)全記錄!

    韻樂(lè)Vinal X3/X5卡拉OK音頻處理器調(diào)音軟件簡(jiǎn)介

    韻樂(lè)Vinal X3/X5卡拉OK音頻處理器調(diào)音軟件軟件簡(jiǎn)介韻樂(lè)Vinal X3/X5調(diào)音軟件具有音箱處理器功能的卡拉ok效果器每個(gè)功能部分都獨(dú)立可調(diào)且有相應(yīng)的PC界面可直觀調(diào)節(jié)易于操
    發(fā)表于 05-16 15:33 ?1次下載

    搭建樹(shù)莓網(wǎng)絡(luò)監(jiān)控系統(tǒng):頂級(jí)工具與技術(shù)終極指南!

    樹(shù)莓網(wǎng)絡(luò)監(jiān)控系統(tǒng)是一種經(jīng)濟(jì)高效且功能多樣的解決方案,可用于監(jiān)控網(wǎng)絡(luò)性能、流量及整體運(yùn)行狀況。借助樹(shù)莓,我們可以搭建一個(gè)網(wǎng)絡(luò)監(jiān)控系統(tǒng),實(shí)時(shí)
    的頭像 發(fā)表于 05-14 15:32 ?692次閱讀
    搭建樹(shù)莓<b class='flag-5'>派</b>網(wǎng)絡(luò)監(jiān)控<b class='flag-5'>系統(tǒng)</b>:頂級(jí)工具與技術(shù)終極指南!

    RDK X3 帶飛的智能護(hù)理系統(tǒng):讓機(jī)器人秒變貼心小棉襖

    濟(jì)往開(kāi)來(lái)團(tuán)隊(duì)帶著超燃黑科技來(lái)了!基于 RDK X3 開(kāi)發(fā)的老年智能監(jiān)控系統(tǒng),跌倒秒報(bào)警、手勢(shì)一鍵呼叫、還能陪嘮嗑!最絕的是 開(kāi)源代碼直接甩鏈接 ,技術(shù)黨狂喜!
    的頭像 發(fā)表于 05-09 21:53 ?259次閱讀
    RDK <b class='flag-5'>X3</b> 帶飛的智能護(hù)理<b class='flag-5'>系統(tǒng)</b>:讓機(jī)器人秒變貼心小棉襖

    車牌識(shí)別新花樣:樹(shù)莓打造智能車牌監(jiān)控系統(tǒng)!

    樹(shù)莓是創(chuàng)客們打造家庭安防系統(tǒng)的熱門選,這得益于其具備運(yùn)用人工智能(AI)的能力。AI系統(tǒng)識(shí)別潛在威脅,在此情境下,還能
    的頭像 發(fā)表于 04-26 09:03 ?252次閱讀
    車牌<b class='flag-5'>識(shí)別</b>新花樣:樹(shù)莓<b class='flag-5'>派</b>打造智能車牌監(jiān)控<b class='flag-5'>系統(tǒng)</b>!

    HMC-XTB110 無(wú)源x3倍頻器,24-30GHz輸入技術(shù)手冊(cè)

    HMC-XTB110是一款單芯片x3無(wú)源倍頻器,采用GaAs肖特基二極管技術(shù),具有低轉(zhuǎn)換損耗和高度Fo隔離。 這款寬帶x3倍頻器無(wú)需直流電源,適用于低頻率的3倍頻率比直接生成高頻率更加經(jīng)濟(jì)的大規(guī)模
    的頭像 發(fā)表于 04-16 16:15 ?326次閱讀
    HMC-XTB110 無(wú)源<b class='flag-5'>x3</b>倍頻器,24-30GHz輸入技術(shù)手冊(cè)

    百度AI手語(yǔ)數(shù)字人助力聽(tīng)障人士“聽(tīng)見(jiàn)”聲音

    近幾年,百度先后與天津理工大學(xué)、鯨言科技合作,共同研發(fā)出百度智能云曦靈AI手語(yǔ)平臺(tái)與雙向手語(yǔ)翻譯機(jī),讓手語(yǔ)的“聲音”,被更多人聽(tīng)見(jiàn)。
    的頭像 發(fā)表于 02-21 11:29 ?839次閱讀

    “你的錢來(lái)了”:財(cái)神1號(hào),RDK X3驅(qū)動(dòng),自動(dòng)撿錢不手軟!

    采用 RDK X3 打造無(wú)情的撿錢機(jī)器,每天8億紙幣掉在路面上,財(cái)神1號(hào)幫你撿個(gè)夠!
    的頭像 發(fā)表于 02-18 11:15 ?592次閱讀
    “你的錢來(lái)了”:財(cái)神1號(hào),RDK <b class='flag-5'>X3</b>驅(qū)動(dòng),自動(dòng)撿錢不手軟!

    全平臺(tái)搭載旭日5!科沃斯GOAT智能割草機(jī)器人全新系列正式開(kāi)售

    科沃斯GOAT全新系列產(chǎn)品全平臺(tái)搭載地瓜機(jī)器人全新推出的旭日5智能計(jì)算芯片
    的頭像 發(fā)表于 02-18 11:03 ?795次閱讀
    全平臺(tái)搭載<b class='flag-5'>旭日</b>5!科沃斯GOAT智能割草機(jī)器人全新<b class='flag-5'>系列</b>正式開(kāi)售

    AI助力實(shí)時(shí)翻譯耳機(jī)

    是一種能夠實(shí)時(shí)將一種語(yǔ)言翻譯成另一種語(yǔ)言的耳機(jī)設(shè)備。它通常由一個(gè)耳機(jī)和一個(gè)配套的應(yīng)用程序組成,用戶可以通過(guò)應(yīng)用程序選擇需要翻譯的語(yǔ)言,并通過(guò)耳機(jī)聽(tīng)到翻譯結(jié)果。 2
    的頭像 發(fā)表于 01-24 11:14 ?1657次閱讀
    AI助力<b class='flag-5'>實(shí)時(shí)</b><b class='flag-5'>翻譯</b>耳機(jī)

    Cadence推出Palladium Z3與Protium X3系統(tǒng)

    楷登電子(Cadence)公司近日宣布,正式推出新一代Cadence? Palladium? Z3 Emulation和Protium? X3 FPGA原型驗(yàn)證系統(tǒng)。這一組合標(biāo)志著數(shù)字孿生
    的頭像 發(fā)表于 01-07 13:48 ?1053次閱讀

    HarmonyOS NEXT 應(yīng)用開(kāi)發(fā)練習(xí):AI智能語(yǔ)音播報(bào)

    (Text-To-Speech,文本轉(zhuǎn)語(yǔ)音)技術(shù)將文本轉(zhuǎn)換為語(yǔ)音進(jìn)行播報(bào)。 當(dāng)然除了基本的文本輸入和播報(bào)功能外,我們還增加了語(yǔ)音識(shí)別的功能,允許用戶通過(guò)語(yǔ)音輸入要播報(bào)的文本。 還優(yōu)化了
    發(fā)表于 01-06 15:33

    英飛凌AURIX? TC3x MCU系列新增FreeRTOS支持

    全球功率系統(tǒng)和物聯(lián)網(wǎng)領(lǐng)域的半導(dǎo)體領(lǐng)軍企業(yè)英飛凌科技股份公司,近日宣布其AURIX? TC3x微控制器(MCU)系列新增了對(duì)FreeRTOS的支持。這一舉措標(biāo)志著AURIX? TC3x
    的頭像 發(fā)表于 12-11 14:06 ?816次閱讀

    中山大學(xué):基于定制裂紋設(shè)計(jì)的超靈敏透氣水凝膠纖維應(yīng)變傳感器及無(wú)線手語(yǔ)識(shí)別應(yīng)用

    和地域多樣性可能會(huì)給不懂手語(yǔ)的人造成交流障礙。目前,各種識(shí)別人類手勢(shì)的技術(shù),包括視覺(jué)圖像處理、肌電圖和可穿戴應(yīng)變傳感器,在改善聾啞人群體的溝通方面發(fā)揮了重要作用。特別地,視覺(jué)圖像處理在手語(yǔ)識(shí)別
    的頭像 發(fā)表于 12-02 17:29 ?906次閱讀
    中山大學(xué):基于定制裂紋設(shè)計(jì)的超靈敏透氣水凝膠纖維應(yīng)變傳感器及無(wú)線<b class='flag-5'>手語(yǔ)</b><b class='flag-5'>識(shí)別</b>應(yīng)用