[樂(lè)游網(wǎng)導(dǎo)讀]ai孫燕姿什么意思?一夜之間“AI孫燕姿”火遍全網(wǎng),由此引發(fā)了大家對(duì)ai音頻轉(zhuǎn)換工具的相關(guān)探討,ai孫燕姿是使用GitHub上面的一個(gè)開(kāi)源項(xiàng)目SO-VITS-SVC制作而來(lái),用戶(hù)可以在此項(xiàng)目中通過(guò)ai智能工具收集孫燕姿的音色,從而生成目標(biāo)音色模型來(lái)翻唱作品,ai孫燕姿怎么做的?不知道的朋友趕緊來(lái)看看!
ai孫燕姿什么意思?一夜之間“AI孫燕姿”火遍全網(wǎng),由此引發(fā)了大家對(duì)ai音頻轉(zhuǎn)換工具的相關(guān)探討,ai孫燕姿是使用GitHub上面的一個(gè)開(kāi)源項(xiàng)目SO-VITS-SVC制作而來(lái),用戶(hù)可以在此項(xiàng)目中通過(guò)ai智能工具收集孫燕姿的音色,從而生成目標(biāo)音色模型來(lái)翻唱作品,ai孫燕姿怎么做的?不知道的朋友趕緊來(lái)看看!
ai孫燕姿什么意思
一夜之間“AI孫燕姿”火遍全網(wǎng)。在B站上,AI孫燕姿翻唱的林俊杰《她說(shuō)》、周董《愛(ài)在西元前》、趙雷《成都》等等,讓一眾網(wǎng)友深陷無(wú)法自拔。網(wǎng)友表示,聽(tīng)了一晚上AI孫燕姿,出不去了......
這些翻唱作品基于一個(gè)叫做so-vits-svc的開(kāi)源項(xiàng)目。僅憑數(shù)段音頻,就可用一個(gè)生成式模型來(lái)合成目標(biāo)音色的音頻,訓(xùn)練出用戶(hù)想要的聲學(xué)模型。這個(gè)模型可以保留音高和音調(diào),也可以用不同的語(yǔ)言來(lái)翻唱。
ai孫燕姿下載:【點(diǎn)擊下載】
ai孫燕姿怎么做的
方法一:
一、準(zhǔn)備工作
訓(xùn)練數(shù)據(jù)很關(guān)鍵,越多高質(zhì)量的音頻數(shù)據(jù),效果越好,建議至少準(zhǔn)備一個(gè)小時(shí)以上的音頻。
顯卡建議使用 N 卡且顯存 8G 以上。
我將項(xiàng)目所需要的代碼、工具整理了出來(lái),如有需要可以在評(píng)論區(qū)留言或者通過(guò)下方鏈接聯(lián)系我。
當(dāng)然,也可以直接用開(kāi)源代碼直接部署,地址如下
GitHub - svc-develop-team/so-vits-svc: SoftVC VITS Singing Voice Conversion
二、環(huán)境安裝
1.安裝pytorch深度學(xué)習(xí)框架
需要安裝pytorch,torchaudio,torchvision三個(gè)庫(kù)
參考我之前寫(xiě)的https://yunlord.blog.csdn.net/article/details/129812705?spm=1001.2014.3001.5502
2.安裝相關(guān)依賴(lài)
可以看到下載的項(xiàng)目中包含兩個(gè)requirements.txt,以windows為例,
進(jìn)入到項(xiàng)目中,通過(guò)prompt輸入以下指令,
pip install -r requirements_win.txt
三、數(shù)據(jù)處理
訓(xùn)練音頻、還有需要預(yù)測(cè),或者說(shuō)轉(zhuǎn)換的音頻都必須是人物的干聲。換句話(huà)說(shuō)音頻中不能包含背景音、伴奏、合聲等,所以無(wú)論是訓(xùn)練和預(yù)測(cè),都需要對(duì)數(shù)據(jù)進(jìn)行處理。
1.提取人聲
我們可以通過(guò)UVR5 這個(gè)軟件實(shí)現(xiàn)伴奏與人聲分離。
在 Windows 下可以直接使用。打開(kāi)軟件,按照如下配置
運(yùn)行即可分離人聲和伴奏。
然后再按照如下配置,去除合聲,
經(jīng)過(guò)提取出的干凈人聲音頻就可以用來(lái)訓(xùn)練。
2.切割音頻
不過(guò)因?yàn)橐纛l太長(zhǎng),不要超過(guò)三十秒,很容易爆顯存,需要對(duì)音頻文件進(jìn)行切片。
我們通過(guò) Audio Slicer這個(gè)工具實(shí)現(xiàn)音頻切分 。
直接運(yùn)行 slicer-gui.exe。
填寫(xiě)輸入路徑,填寫(xiě)輸出路徑,其它參數(shù)都默認(rèn)即可,這樣就會(huì)得到切分好的音頻段。
建議切完之后逐段聽(tīng)下,將效果不好的刪除,高質(zhì)量的音頻比數(shù)量多的效果更好。并且如果還有時(shí)長(zhǎng)超過(guò)30s的可以通過(guò)寫(xiě)的python音頻切割代碼進(jìn)行截切。
在項(xiàng)目的 so-vits-svc-4.0/dataset_raw 目錄下創(chuàng)建一個(gè)文件夾,比如我的是 wang_processed,將處理好的數(shù)據(jù)放到里面。
四、訓(xùn)練模型
在訓(xùn)練模型前,我們需要下好原始模型,并將其放到對(duì)應(yīng)位置
將checkpoint_best_legacy_500.pt放入hubert文件夾下
將D_0.pth和G_0.pth放入logs/44k目錄下
1.數(shù)據(jù)預(yù)處理
接下來(lái)可以直接運(yùn)行項(xiàng)目里面的1.數(shù)據(jù)預(yù)處理.bat。
這個(gè)腳本就是按照步驟,運(yùn)行各個(gè) py 腳本
重采樣至44100Hz單聲道
python resample.py
自動(dòng)劃分訓(xùn)練集、驗(yàn)證集及自動(dòng)生成配置文件
python preprocess_flist_config.py
生成hubert與f0
python preprocess_hubert_f0.py
處理完畢后會(huì)在 datset/44k 下生成一個(gè)文件夾。里面的數(shù)據(jù)如下圖所示
可以刪除 dataset_raw 文件夾了。
2.模型訓(xùn)練
直接運(yùn)行項(xiàng)目中的2.訓(xùn)練.bat即可開(kāi)啟訓(xùn)練。
python train.py -c configs/config.json -m 44k
如果顯卡夠好可以增加 batch_size 提高訓(xùn)練速度對(duì)應(yīng)的配置文件在 configs/config.json 文件里。
這個(gè)訓(xùn)練時(shí)間很長(zhǎng),個(gè)人覺(jué)得如果數(shù)據(jù)較好的話(huà),訓(xùn)練到30000輪以上就有一個(gè)不錯(cuò)的效果。
3.聚類(lèi)模型訓(xùn)練
直接運(yùn)行項(xiàng)目中的3.訓(xùn)練聚類(lèi)模型.bat即可開(kāi)啟訓(xùn)練,這個(gè)比較快,幾分鐘即可跑完。
這個(gè)主要是可以減小音色泄漏,使得模型訓(xùn)練出來(lái)更像目標(biāo)的音色,但其實(shí)不是特別明顯,但是單純的聚類(lèi)方案會(huì)降低模型的咬字,會(huì)口齒不清,這個(gè)很明顯,本模型采用了融合的方式,可以線性控制聚類(lèi)方案與非聚類(lèi)方案的占比,也就是可以手動(dòng)在像目標(biāo)音色和咬字清晰之間調(diào)整比例,找到合適的折中點(diǎn)。
使用聚類(lèi)前面的已有步驟不用進(jìn)行任何的變動(dòng),只需要額外訓(xùn)練一個(gè)聚類(lèi)模型,雖然效果比較有限,但訓(xùn)練成本也比較低。
訓(xùn)練過(guò)程,
執(zhí)行python cluster/train_cluster.py,模型的輸出會(huì)在logs/44k/kmeans_10000.pt
推理過(guò)程,
inference_main.py中指定cluster_model_path
inference_main.py中指定cluster_infer_ratio,0為完全不使用聚類(lèi),1為只使用聚類(lèi),通常設(shè)置0.5即可
4.推理預(yù)測(cè)
準(zhǔn)備干聲
準(zhǔn)備一首歌的干聲,干聲可以按上述音頻素材準(zhǔn)備那樣處理,通過(guò)UVR5提取一段不超過(guò)90s的干聲素材。
修改模型名
修改 app.py 里的這一行
訓(xùn)練好的模型存放在了 logs/44k 目錄下這里改為訓(xùn)練好的模型地址。以及對(duì)應(yīng)的配置文件,最后是第三步生成的 pt 文件路徑。
運(yùn)行web
直接運(yùn)行項(xiàng)目中的4.推理預(yù)測(cè).bat。
程序會(huì)直接開(kāi)啟一個(gè) webui,將開(kāi)啟的 url,直接復(fù)制到瀏覽器地址欄中打開(kāi)即可。
就是一個(gè)簡(jiǎn)單的 Web 頁(yè)面,里面的參數(shù),可以直接使用默認(rèn)的,放入一個(gè)音頻,即可轉(zhuǎn)換音色。
方法二:
下載GitHub app,按照如下教程進(jìn)行操作
GitHub下載:【點(diǎn)擊下載】
github可以很方便地讓我們參與開(kāi)源項(xiàng)目中,并貢獻(xiàn)自己的代碼.那么,我們?cè)趺慈⑴c一個(gè)開(kāi)源的github項(xiàng)目呢?
首先,去訪問(wèn)你要參與的github主頁(yè),點(diǎn)擊“Fork” => create Fork.
2. 然后,這樣就把這份項(xiàng)目拷貝到了你的遠(yuǎn)程倉(cāng)庫(kù),用你自己的賬號(hào)登錄查看你的倉(cāng)庫(kù),會(huì)發(fā)現(xiàn)你的倉(cāng)庫(kù)已經(jīng)有了這個(gè)項(xiàng)目,點(diǎn)擊Code,copy你的github地址,一定要注意,要在自己的github賬號(hào)上進(jìn)行,不要在項(xiàng)目作者的倉(cāng)庫(kù)上,因?yàn)槟隳居袡?quán)限,你是不能進(jìn)行推送和修改的.
3.如圖,在git里利用命令git clone + copy的github地址把倉(cāng)庫(kù)克隆到你的工作區(qū)上,
clone完成后你就可以在你的工作區(qū)看到這個(gè)項(xiàng)目文件,然后你就可以開(kāi)始干活了,
干完活后,先把你的代碼提交到你的倉(cāng)庫(kù)中里:
git add test.md;
gti commit -m something
git push origin,遠(yuǎn)程倉(cāng)庫(kù), -u master,本地分支,
注push 加上 -u 參數(shù) 是為了讓你的遠(yuǎn)程倉(cāng)庫(kù)與你的本地分支建立連接,以后push的時(shí)候就可以不必加上這個(gè)參數(shù)了.
然后在你的賬號(hào)下進(jìn)行 Pull requests貢獻(xiàn)你的代碼了
至于對(duì)方是否接受你的代碼,要看對(duì)方的心情了
專(zhuān)業(yè)的游戲下載、綜合門(mén)戶(hù)網(wǎng)站
Copyright 2009-2016 www.i95191.cn 版權(quán)所有
鄂ICP備17018784號(hào)-1
熱門(mén)評(píng)論
最新評(píng)論