# VoiceprintRecognition **Repository Path**: lizhigong/VoiceprintRecognition ## Basic Information - **Project Name**: VoiceprintRecognition - **Description**: 使用tensorflow框架和densenet神经网路实现声纹语谱图识别算法,即说话人识别。 - **Primary Language**: Python - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 18 - **Forks**: 9 - **Created**: 2019-09-30 - **Last Updated**: 2023-05-25 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # VoiceprintRecognition #### 介绍 使用tensorflow框架和densenet神经网路实现声纹语谱图识别算法,即说话人识别。 #### 软件架构 软件架构说明 1.开发框架使用的TensorFlow 2.神经网络架构使用的densenet ### 训练流程: (1)下载数据集CommonVoice 网址https://voice.mozilla.org/zh-CN/datasets。输入邮箱即可免费下载。 (2)下载后解压到当前文件夹下。 (3)运行VoiceToImg.py中的CommonVoiceSplit()将validated.tsv中标注的mp3文件按人分割目录。分割后可以手工筛选一下,这里学习使用,仅保留20人的数据其余的删除掉,我这里找的都是有5段mp3语音的文件夹(注,文件夹要重命名01~20) (4)运行VoiceToImg.py中的ChangeMp3ToWavToImg()将mp3文件批量转换成大量语谱图,每个语谱图代表大概1.5秒的声音,内含声纹特征。 (5)运行ImgToDataset.py将语谱图打包成训练集和测试集image.train.FRecord,image.test.FRecord。 (6)运行MyDenseNet.py的train(),开始训练,训练次数可自行配置,网络超参数可调整,深度,densenet块的层数。 #### 使用说明 1. mp3转换语谱图的过程需要先转换成wav文件,使用pydub,可以直接pip安装。pyhub依赖ffmpeg,使用Anaconda的朋友可以conda install -c conda-forge ffmpeg安装。 2. mp3转换后的wav需要降采样,使用librosa,可以直接pip安装。 3. 本人新手,代码是近期学习的一些心得体会做的,里面也有一些注释和用法,希望结识一些好汉共同学习,也希望各路高手不吝赐教。 #### 参与贡献 1. Fork 本仓库 2. 新建 Feat_xxx 分支 3. 提交代码 4. 新建 Pull Request #### 码云特技 1. 使用 Readme\_XXX.md 来支持不同的语言,例如 Readme\_en.md, Readme\_zh.md 2. 码云官方博客 [blog.gitee.com](https://blog.gitee.com) 3. 你可以 [https://gitee.com/explore](https://gitee.com/explore) 这个地址来了解码云上的优秀开源项目 4. [GVP](https://gitee.com/gvp) 全称是码云最有价值开源项目,是码云综合评定出的优秀开源项目 5. 码云官方提供的使用手册 [https://gitee.com/help](https://gitee.com/help) 6. 码云封面人物是一档用来展示码云会员风采的栏目 [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/)