柯南变声器的算法实现原理
1.背景
小時候特別喜歡看柯南,里面有個變聲蝴蝶結,讓我印象深刻。變聲蝴蝶結的作用就是可以把輸入的語言轉化成其它人的聲音。舉個例子,如果我有這個語音轉換功能,下次錄歌的時候就可以用周杰倫的聲音錄制(唱功還是自己的)。
如果要實現變聲功能,這里面包含哪些技術點呢,首先要提取出語音中的3種表征:
內容表征:輸入語音的具體內容
聲紋表征:可以理解為人的聲色,每個人都是不同的
說話風格表征:說話的語氣、強弱、快慢等風格相關
通過上述分析,如何實現變聲功能就比較好理解了。首先把語音分解為內容表征、聲紋表征、說哈風格表征3種特征,然后把聲紋表征替換成其他人的聲紋特征即可實現。
?
2.聲紋識別
那么聲紋識別如何實現就成了變聲功能的關鍵。先看下聲音信號是什么樣的:
大家應該在各種k歌工具中都多少了解些聲音信號的樣子,基本上聲音信號就是一堆脈沖。脈沖是一個時序信號數據,很難處理。
需要對聲音時序信號進行傅里葉轉換,才能轉換成頻譜圖(學過通信的同學應該比較好理解,通信專業的我當年碰到傅里葉這3個字就抖),轉換效果如下圖:
?
傅里葉轉換后的圖其實就成了一個與時間無關的圖,所以就可以通過深度學習CNN算法去學習規律。然后就可以實現對于語音信號的聲紋的分析和識別。
3.應用場景
上文大概講了下變聲這個功能的大體理論以及聲紋識別的算法原理。接下來講一個適用場景吧,早在14年我在某外資手機巨頭做手機軟件開發的時候就想到一個場景,通過聲紋識別解決騷擾電話。
?
當時想的方法是這樣的,首先通過聲紋識別把用戶所有有關聯的人的聲紋pattern都識別出來,存儲到手機內。一旦有個電話進來,先不著急接通,而是要求撥電話的人說一句話,這時候馬上識別他的聲紋與手機中存儲的聲紋pattern作比對。如果撥電話得人的聲紋是一個新聲紋,則判定為騷擾電話,拒絕接通~現在想想,那時候這種通過聲紋識別攔截騷擾電話的想法還是挺超前的
?
謝謝大家,希望能對大家有所幫助~
?
總結
以上是生活随笔為你收集整理的柯南变声器的算法实现原理的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 把广告投给你要几步,一文带你了解广告业务
- 下一篇: 写给开发向产品转型的同学的3句话