android - 有没有关于乐谱识别的应用开发包?
PHP中文网
PHP中文网 2017-04-17 16:12:24
0
3
443

开发一个自动翻页琴谱的应用,但是问题在于——如何识别琴谱并析出琴谱中的音频段?
想要类似的已存在的应用开发包,如果自己写算法的话肯定是来不及的了。
我查过关于乐谱的OCR,但它好像只是识别和分割琴谱。具体不知道它怎么应用,不知道能不能将分割出来的琴谱相应地分析出音频?
又或者只用电子乐谱,那样的话,怎样获取电子乐谱的音频数据?
很紧急,在这求助各位大大!!!先谢过。

PHP中文网
PHP中文网

认证0级讲师

membalas semua(3)
巴扎黑

乐谱里怎么会有音频信息?那一个乐谱得多大啊!

不知道你查过的 OCR 能否识别出音符的音高和时值,如果可以的话直接写成 midi 那样就可以获得数字音频信息。

还要设想一下你这个应用的使用场景,自动翻谱用户是如何操作法?连接数字乐器捕获 midi 信号,然后匹配你解析出的音频信息从而翻谱?还是用户用收音设备实时传送模拟信号,由你做数模转换接着再匹配?

不同的场景有不同的思路可用,不过 midi 是很重要的,数字音频的基础。

刘奇

本人也在做乐音识别相关应用,说下自己做的过程吧。乐谱识别开发包目前并未发现。
音频采集--有声段判断切割--基频提取--实际音频频率比对
1.音频采集:设置好声道,采样率,量化深度
2.切割:首先对音频文件进行分祯处理,然后是对平均能量和平均过零率的计算,通过这两个值作为门限来区分有声段和静音段,从而将有声段切割出来(涉及到连击的时候处理会有点复杂)
3.基频提取:对音频数据进行傅立叶变化,然后去切割好的有声段的前几祯的平均数作为该段的基频。
4.与之前构建好的基音库中的频率进行比对,确定当前音符。
然后将之前输入好的琴谱的数据进行比对,有一个音符发出,琴谱当前数据向前一位,直到该页没有数据,开始翻页。

阿神

楼主有 MIDI转乐谱 OCR识别 乐谱之类的学习资料 或者demo吗,跪求!!!囧 T_T

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!