女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

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

3天內不再提示

EASY EAl Orin Nano(RK3576) whisper語音識別訓練部署教程

EASY EAI靈眸科技 ? 來源:EASY EAI靈眸科技 ? 2025-07-17 14:55 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

1Whisper簡介

Whisper是OpenAI開源的,識別語音識別能力已達到人類水準自動語音識別系統。Whisper作為一個通用的語音識別模型,它使用了大量的多語言和多任務的監督數據來訓練,能夠在英語語音識別上達到接近人類水平的魯棒性和準確性。Whisper還可以進行多語言語音識別、語音翻譯和語言識別等任務。Whisper的架構是一個簡單的端到端方法,采用了編碼器-解碼器的Transformer模型,將輸入的音頻轉換為對應的文本序列,并根據特殊的標記來指定不同的任務。

bae535ba-6054-11f0-baa5-92fbcf53809c.png

教程針對語音識別Whisper的訓練和部署到EASY-EAI-Orin-nano(RK3576)進行說明。

bb028c00-6054-11f0-baa5-92fbcf53809c.png

接下來對算法流程進行說明,whisper算法系統流程如下圖所示:

bb0f756e-6054-11f0-baa5-92fbcf53809c.png

處理器流程:

bb206766-6054-11f0-baa5-92fbcf53809c.png

編碼器流程:

bb29f556-6054-11f0-baa5-92fbcf53809c.png

解碼器流程:

bb41dc5c-6054-11f0-baa5-92fbcf53809c.png

2Whisper模型訓練

Whisper工程下載百度網盤下載鏈接:

https://pan.baidu.com/s/1rX422_7AUMNB_MvZRKL9CQ?pwd=1234(提取碼: 1234)

數據集準備

在本例中,whisper-finetuning工程為whisper模型微調訓練工程,該工程提供whisper數據轉換,模型微調訓練代碼。本章節將以AiShell數據集演示whisper模型微調訓練過程。

其中AiShell下載鏈接:

https://openslr.magicdatatech.com/resources/33/

AiShell數據轉SRT

在本例中我們提供了AiShell數據集轉成SRT的python腳本,請根據示例修改腳本內容,其中:

1. aishell_extract.py 解壓AiShell數據集,解壓后:

data_aishell

├── transcript

│ └── aishell_transcript_v0.8.txt

└── wav

├── dev

├── test

└── train

2. aishell2srt.py 將解壓后的AiShell數據集轉成SRT格式,其格式如下:

datas/data_aishell/wav/test/S0907/BAC009S0907W0352.wav 作為 此次 賽事 上 唯一 一 場 純泰 式 規則 的 超級 戰

datas/data_aishell/wav/test/S0907/BAC009S0907W0269.wav 蘋果 正在 全力 以 赴 出售 盡 可能 多 的 智能 手機

datas/data_aishell/wav/test/S0907/BAC009S0907W0147.wav 從業 人員 五萬 人

datas/data_aishell/wav/test/S0907/BAC009S0907W0495.wav 港媒 稱 內地 人 不 窮 了 為 何 仍 愛 搶 學者 搶 習慣 了

3. 在本例中我們提供了create_data.py,將SRT數據轉成訓練數據,執行命令:

python create_data.py --data-file --language --output train.json

#suchas:

python create_data.py --data-file datas/data_aishell/train.txt --language zh --output train.json

轉換后數據格式如下:

{"audio_path": "datas/data_aishell/wav/test/S0907/BAC009S0907W0352.wav", "text":"作為 此次 賽事 上 唯一 一 場 純泰 式 規則 的 超級 戰", "language": "zh", "prompt":""}

{"audio_path": "datas/data_aishell/wav/test/S0907/BAC009S0907W0269.wav", "text": "蘋果 正在 全力 以 赴 出售 盡 可能 多 的 智能 手機", "language": "zh", "prompt":""}

{"audio_path": "datas/data_aishell/wav/test/S0907/BAC009S0907W0147.wav", "text": "從業 人員 五萬 人", "language": "zh", "prompt":""}

{"audio_path": "datas/data_aishell/wav/test/S0907/BAC009S0907W0495.wav", "text": "港媒 稱 內地 人 不 窮 了 為 何 仍 愛 搶 學者 搶 習慣 了", "language": "zh", "prompt":""}

模型訓練

在本例中我們提供了run_finetuning.py用于模型訓練,執行命令如下:

python run_finetuning.py --train-json --dev-json --model --save-dir

注:其中model可以為tiny, base, small, medium等值,程序會自動下載對應的模型;如果,model的值為本地模型文件,則程序會直接加載本地模型進行微調訓練。訓練好的模型將保存在save-dir目錄下。

PT模型轉ONNX

convert工程為whisper模型轉換工程,提供了將pt模型轉rknn過程的所有腳本。在本例中我們提供了export_onnx.py腳本將pt模型轉成onnx,轉換命令:

pip install openai-whisper==20231117

python export_onnx.py --model_type

注:

model_type可以為tiny, base, small, medium等值,程序會自動下載對應的模型。如果model的值為本地模型文件,則程序會直接加載本地模型進行轉換。同時,onnx模型保存地址需要修改export_onnx.py代碼。

3rknn-toolkit模型轉換

rknn-toolkit模型轉換環境搭建

onnx模型需要轉換為rknn模型才能在EASY-EAI-Orin-nano運行,所以需要先搭建rknn-toolkit模型轉換工具的環境。當然tensorflow、tensroflow lite、caffe、darknet等也是通過類似的方法進行模型轉換,只是本教程onnx為例。

概 述

模型轉換環境搭建流程如下所示:

bb4bea9e-6054-11f0-baa5-92fbcf53809c.png ? ? ?

下載模型轉換工具

為了保證模型轉換工具順利運行,請下載網盤里“06.AI算法開發/01.rknn-toolkit2模型轉換工具/rknn-toolkit2-v2.3.0/docker/rknn-toolkit2-v2.3.0-cp38-docker.tar.gz”。

網盤下載鏈接:

https://pan.baidu.com/s/1J86chdq1klKFnpCO1RCcEA?pwd=1234(提取碼:1234)

把工具移到ubuntu20.04

把下載完成的docker鏡像移到我司的虛擬機ubuntu20.04的rknn-toolkit2目錄,如下圖所示:

bb5b491c-6054-11f0-baa5-92fbcf53809c.png

運行模型轉換工具環境

在該目錄打開終端

bb6d47ca-6054-11f0-baa5-92fbcf53809c.png

執行以下指令加載模型轉換工具docker鏡像:

docker load --input rknn-toolkit2-v2.3.0-cp38-docker.tar.gz

執行以下指令進入鏡像bash環境:

docker run -t -i --privileged -v /dev/bus/usb:/dev/bus/usb rknn-toolkit2:2.3.0-cp38 /bin/bash

現象如下圖所示:

bb79f1a0-6054-11f0-baa5-92fbcf53809c.png

輸入“python”加載python相關庫,嘗試加載rknn庫,如下圖環境測試成功:

bb81729a-6054-11f0-baa5-92fbcf53809c.png

至此,模型轉換工具環境搭建完成。

模型轉換為RKNN

EASY EAI Orin-nano支持.rknn后綴的模型的評估及運行,對于常見的tensorflow、tensroflow lite、caffe、darknet、onnx和Pytorch模型都可以通過我們提供的 toolkit 工具將其轉換至 rknn 模型,而對于其他框架訓練出來的模型,也可以先將其轉至 onnx 模型再轉換為 rknn 模型。模型轉換操作流程入下圖所示:

bb92e87c-6054-11f0-baa5-92fbcf53809c.png ? ? ?

模型轉換Demo下載

下載百度網盤鏈接:

https://pan.baidu.com/s/1C1lQN1U9YhKwpi6PwuyxxA?pwd=1234(提取碼: 1234)

把whisper_convert_rk3576.tar.bz2解壓到虛擬機,如下圖所示:

bb9fbdc2-6054-11f0-baa5-92fbcf53809c.png

進入模型轉換工具docker環境

執行以下指令把工作區域映射進docker鏡像,其中,/home/developer/rknn-toolkit2/model_convert_test為工作區域,/test為映射到docker鏡像,/dev/bus/usb:/dev/bus/usb為映射usb到docker鏡像

docker run -t -i --privileged -v /dev/bus/usb:/dev/bus/usb -v /home/developer/rknn-toolkit2/model_convert_test:/test rknn-toolkit2:2.3.0-cp38 /bin/bash

執行成功如下圖所示:

bbb16e14-6054-11f0-baa5-92fbcf53809c.png

模型轉換操作說明

1、模型轉換Demo目錄結構

bbbdbfca-6054-11f0-baa5-92fbcf53809c.png

2、 onnx模型轉換為rknn模型

在本例中我們提供了rknn_convert.py腳本將onnx模型轉成rknn,腳本代碼清單如下所示:

import os

importurllib

importtraceback

importtime

importsys

importnumpy as np

importcv2

from rknn.apiimportRKNN

ONNX_MODEL ='./whisper_decoder_base_20s.onnx'

RKNN_MODEL ='./whisper_decoder_base_20s.rknn'

DATASET ='./pic_path.txt'

QUANTIZE_ON = False

if__name__ =='__main__':

# Create RKNN object

rknn =RKNN(verbose=True)

ifnot os.path.exists(ONNX_MODEL):

print('model not exist')

exit(-1)

#pre-process config

print('--> Config model')

rknn.config(target_platform ='rk3576')

print('done')

# Load ONNX model

print('--> Loading model')

ret = rknn.load_onnx(model=ONNX_MODEL)

ifret !=0:

print('Load model failed!')

exit(ret)

print('done')

# Build model

print('--> Building model')

ret = rknn.build(do_quantization=QUANTIZE_ON)

ifret !=0:

print('Build model failed!')

exit(ret)

print('done')

# Export RKNN model

print('--> Export RKNN model')

ret = rknn.export_rknn(RKNN_MODEL)

ifret !=0:

print('Export model failed!')

exit(ret)

print('done')

切換目錄到模型轉換工作目錄:

cd /test/whisper_convert_rk3576

bbda7f48-6054-11f0-baa5-92fbcf53809c.png

執行模型轉換腳本,轉換解碼模型:

python rknn_convert.py

注:whisper是編碼器-解碼器的Transformer模型,所以encoder和decoder模型均需轉換。生成模型如下圖所示,模型將保存至output_path 路徑,此模型可以在rknn環境和EASY EAI Orin-nano環境運行:

bbe376d4-6054-11f0-baa5-92fbcf53809c.png

修改rknn_convert.py腳本的ONNX_MODEL和RKNN_MODEL,改為編碼模型的信息。

bbf25af0-6054-11f0-baa5-92fbcf53809c.png

執行模型轉換腳本,轉換編碼模型:

bbfcb590-6054-11f0-baa5-92fbcf53809c.png

至此,模型轉換流程已完成。

4

模型部署示例

本小節展示Whisper模型的在EASY EAI Orin-nano的部署過程,本章章節使用解碼模型whisper_decoder_base_20s.rknn和編碼模型whisper_encoder_base_20s.rknn。

源碼下載及說明

下載whisper C Demo示例文件

百度網盤鏈接:

https://pan.baidu.com/s/1ID5s2LAs_EdgHYcLds3Tvw?pwd=1234(提取碼:1234)。

下載程序包移至ubuntu環境后,執行以下指令解壓:

tar xvf whisper_C_demo.tar.bz2

下載解壓后如下圖所示:

bc0de4aa-6054-11f0-baa5-92fbcf53809c.png

例程編譯

通過adb接口連接EASY-EAI-Orin-nano,,連接方式如下圖所示:

bc155bae-6054-11f0-baa5-92fbcf53809c.png

接下來需要通過adb把源碼傳輸到板卡上,先切換目錄然后執行以下指令:

adb push whisper_C_demo /userdata

bc352d80-6054-11f0-baa5-92fbcf53809c.png

登錄到板子切換到例程目錄執行編譯操作

adb shell

cd /userdata/whisper_C_demo

chmod777build.sh

./build.sh

bc3ea78e-6054-11f0-baa5-92fbcf53809c.png ? ?

運行結果

編譯成功后會得到whisper_demo可執行程序,切換到whisper_C_demo_release/目錄:

cd whisper_C_demo_release/

進行中文語音識別測試:

./whisper_demo whisper_encoder_base_20s.rknn whisper_decoder_base_20s.rknn mel_80_filters.txt vocab_zh.txt zh12345678910_CN.wav

執行成功識別出中文語音內容,RTF值約為0.046:

bc4dcb7e-6054-11f0-baa5-92fbcf53809c.png

進行英文語音識別測試,RTF值為0.055:

bc5b93da-6054-11f0-baa5-92fbcf53809c.png

至此,whisper語音識別例程已成功在板卡運行。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 編碼器
    +關注

    關注

    45

    文章

    3799

    瀏覽量

    138030
  • 語音識別
    +關注

    關注

    39

    文章

    1781

    瀏覽量

    114226
  • 開源
    +關注

    關注

    3

    文章

    3688

    瀏覽量

    43822
  • 模型
    +關注

    關注

    1

    文章

    3520

    瀏覽量

    50419
  • OpenAI
    +關注

    關注

    9

    文章

    1208

    瀏覽量

    8914

原文標題:EASY EAl Orin Nano(RK3576) whisper語音識別訓練部署教程

文章出處:【微信號:easy-eai-AIoT,微信公眾號:EASY EAI靈眸科技】歡迎添加關注!文章轉載請注明出處。

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    基于RK3576開發板的PWN使用說明

    RK3576開發板使用PWN教程及Demo
    的頭像 發表于 05-07 14:07 ?1278次閱讀
    基于<b class='flag-5'>RK3576</b>開發板的PWN使用說明

    基于RK3576開發板的人臉識別算法

    RK3576開發板展示人臉識別算法例程和API說明
    的頭像 發表于 05-07 16:48 ?1933次閱讀
    基于<b class='flag-5'>RK3576</b>開發板的人臉<b class='flag-5'>識別</b>算法

    RK3576 vs RK3588:為何越來越多的開發者轉向RK3576

    瑞芯微(Rockchip)最新發布的 RK3576 一經推出,就吸引了大量原本關注 RK3588 的開發者。RK3588 作為旗艦級芯片,性能固然強大,但 RK3576 憑借其超高的能
    發表于 05-30 08:46

    Mpp支持RK3576

    想問下,https://github.com/rockchip-linux/mpp這里面支持RK3576么,看介紹沒有提到說支持RK3576 目前是買了個rk3576的機頂盒,搭載了安卓14,想做安卓視頻硬解。
    發表于 06-13 15:35

    EASY EAI Orin Nano開發板試用體驗】01-開箱報告及開發環境準備

    28nm提升到了8nm;而與旗艦RK3588對比來講,性能雖然降低了一些,但是RK3576的價格不是降低了一點點,就目前來講如果購買開發板的話,就像EASY EAI Orin
    發表于 06-24 19:04

    EASY EAI Orin Nano開發板試用體驗】--開發板開箱了解

    感謝靈眸科技與論壇提供的開發板與平臺。EASY EAI Orin-Nano開發板實物如下: EASY EAI Orin Nano開發板基于瑞
    發表于 06-25 23:32

    EASY EAI Orin Nano開發板試用體驗】人臉識別體驗

    /nfs -o nolock 【注】此處需要插上網線連上網,要不提示連接服務器出錯。 3、進入人臉識別目錄,并執行./build.sh編譯: root@EASY-EAI-ORIN-NANO:/home
    發表于 06-26 06:54

    EASY EAI Orin Nano開發板試用體驗】開箱和固件燒錄更新體驗

    首先感謝靈眸科技和發燒友組織的開發板大賽! 一、硬件介紹 靈眸科技EASY EAI Orin-Nano基于瑞芯微的RK3576處理器設計,集成了4個Cortex-A72和4個Cortex-A53
    發表于 06-26 23:41

    EASY EAI Orin Nano開發板試用體驗】EASY-EAI-Toolkit初體驗

    的工作,開發者可以直接進行AI業務部署,加快了AI應用開發速度。 二、環境搭建 (一)源碼下載 考慮到RK3576強大的計算能力,所以就之際在EASY EAI Orin
    發表于 06-28 21:21

    EASY EAI Orin Nano開發板試用體驗】人臉識別提升

    【前言】【新提醒】【EASY EAI Orin Nano開發板試用體驗】人臉識別體驗 - EASY EAI靈眸科技 - 電子技術論壇 - 廣
    發表于 07-05 15:21

    新品體驗 | RK3576開發板

    前言:RK3576作為瑞芯微第二代8nm高性能AIOT平臺,一經推出便獲得了極大的關注。廣州眺望電子科技有限公司是一家專注于嵌入式處理器模組研發與應用的國家高新技術企業,目前公司已推出的相關型號有
    的頭像 發表于 11-01 08:08 ?1917次閱讀
    新品體驗 | <b class='flag-5'>RK3576</b>開發板

    RK3576單板發布倒計時:RK3399與RK3576對比

    好多人說RK3576RK3399的升級版,某種程度上也可以這么說,RK3576在強大的多媒體功能的基礎上,性能和接口都進行了升級 一、工藝 性能 rk3576采用 Rockchip
    的頭像 發表于 12-03 16:59 ?1293次閱讀
    <b class='flag-5'>RK3576</b>單板發布倒計時:<b class='flag-5'>RK</b>3399與<b class='flag-5'>RK3576</b>對比

    RK3576 yolov8訓練部署教程

    本章展示yolov8模型的在EASY EAI Orin nano部署過程。
    的頭像 發表于 04-02 16:04 ?460次閱讀
    <b class='flag-5'>RK3576</b> yolov8<b class='flag-5'>訓練</b><b class='flag-5'>部署</b>教程

    RK3576 yolov11-seg訓練部署教程

    級的精確目標檢測與分割,適用于自動駕駛、醫學影像、工業檢測等對精度和速度要求苛刻的場景。 ? ? ? ?本教程針對目標分割算法yolov11 seg的訓練部署EASY-EAI-Orin-nano(
    的頭像 發表于 04-16 09:43 ?765次閱讀
    <b class='flag-5'>RK3576</b> yolov11-seg<b class='flag-5'>訓練</b><b class='flag-5'>部署</b>教程

    基于RK3576處理器,EASY EAI Orin Nano開發板免費試用

    EASY EAI Orin Nano是廣州靈眸科技有限公司的旗艦級硬件產品。基于瑞芯微的RK3576處理器設計,集成了4個Cortex-A72和4個Cortex-A53及支持NEON指
    的頭像 發表于 06-09 15:01 ?464次閱讀
    基于<b class='flag-5'>RK3576</b>處理器,<b class='flag-5'>EASY</b> EAI <b class='flag-5'>Orin</b> <b class='flag-5'>Nano</b>開發板免費試用