使用此数据存储库的功能:https://figshare.com/articles/birdsongcognition/3470165

koumura的Python项目详细描述


小村

用于处理来自以下存储库的数据的函数: https://figshare.com/articles/BirdsongRecognition/3470165

储存库中有来自十只鸟的孟加拉雀鸣声的.wav文件。 以及.xml文件中歌曲的注释。

这个存储库提供了一个很好的资源,用于基准测试 基于滑动窗口的神经网络分割与标记 鸟鸣的元素,如下文所述:
Koumura、Takuya和Kazuo Okanoya。
“鸟鸣中元素类别和边界的自动识别 具有可变序列。“
《公共科学图书馆·综合》11.7(2016):e0159188。
https://journals.plos.org/plosone/article?id=10.1371/journal.pone.0159188

网络代码可在此处找到:
https://github.com/takuya-koumura/birdsong-recognition

原始代码是根据gnu许可证发布的:
https://github.com/takuya-koumura/birdsong-recognition/blob/master/LICENSE

koumura模块与^{}一起使用 包,使存储库成为 ^{} 以及^{}库。

它被称为koumura,因为那是第一个作者的姓氏 在纸上,因为我懒得打字。

安装

$ pip install koumura

使用量

koumura为您提供的主要功能是轻松访问 注释,而不必处理.xml文件格式。

要访问每个bird的Annotation.xml文件中的注释, 使用parse_xml函数。

>>>fromkoumuraimportparse_xml>>>seq_list=parse_xml(xml_file='./Bird0/Annotation.xml',concat_seqs_into_songs=False)>>>seq_list[0]Sequencefrom0.wavwithposition32000andlength43168>>>seq_list[0].syls[:3][Syllablelabeled0atposition2240withlength2688,Syllablelabeled0atposition8256withlength2784,Syllablelabeled0atposition14944withlength2816]

注意,这个包保留了原始代码的抽象, 其中音节和音节序列表示为对象。 如果您尝试从 密码。
重要的是,每首歌都被分成若干“序列”。 如果需要,可以将标志concat_seqs_into_songs设置为Trueparse_xml按歌曲(.wav文件)连接序列,以便 序列实际上是一首歌的所有序列。
如果使用注释处理数据集 还有其他的目的,你会发现和一些人一起工作更方便 其他格式。为此,请查看 ^{} 包,它将此批注格式和其他格式转换为 整齐的逗号分隔值格式。

koumura包还提供了一个方便的函数来加载注释 对于单个歌曲,load_song_annot。这基本上是一个包装 大约parse_xml过滤掉你不想要的歌曲。

>>>fromkoumuraimportload_song_annot>>>wav1=load_song_annot(wav_file='1.wav')>>>print(wav1)Sequencefrom1.wavwithposition32000andlength214176

获得帮助

请在此提出问题:
https://github.com/NickleDave/koumura/issues

许可证

BSD License

引文

如果您使用此模块,请引用doi: DOI

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java JTable无法向新创建的列添加值   java如何调整JEditorPane中编辑区域的大小?   Java通过反射确定未知数组中的数组大小   java Intellij Idea有时无法按其预期的方式构建应用程序   java Swing GUI带有IntelliJ错误“contentPane不能设置为null”从终端编译时   如何将这些通用方法调用从C#转换为Java   在null上找不到java属性或字段“index”   从Java HashMap获取整数值时是否需要调用intValue()方法?   java Android谷歌地图获取相机中的图像块   unix无法捕获JAVA中“who m”命令的输出   java,同时将邮件发送到“收件人”标题“我”中的多个收件人   在java中向链表添加未知数量的节点   无法为Heroku上的discord bot设置java端口   java使用Apache HttpClient进行选项请求   与元素类型“ApplicationName”关联的属性“Application Version”需要java Open quote   Android Studio Java中的两个变量求和