【技术实现步骤摘要】
一种基于MusicXML乐谱到盲文的转换方法及系统
本专利技术涉及一种基于MusicXML乐谱到盲文的转换方法及系统,属于人工智能与知识管理领域。
技术介绍
中国是全世界盲人最多的国家,有盲人1200万,占世界盲人总数的18%,盲人由于在视觉上的障碍,从而在听觉上有异于常人的敏感性和灵敏性。在盲人从事的职业当中,越来越多的从业者选择从事音乐相关的工作。本文介绍了一种音乐乐谱到中国盲文的转换方法,主要是把乐谱转换成MusicXML文件再转换到中国盲文的转换方法。音乐按照记谱方式的不同,通常分为五线谱与简谱。五线谱是把代表不同节奏和韵律的音符和音乐记号记载在五条距离相等的横线上的一种方法,也是国际上通用的记谱法。简谱是指一种简易的记谱法,分数字简谱和字母简谱两种。使用打谱软件,五线谱和简谱能够互相转换,当前,大多数乐谱采用五线谱方式记载。MusicXML是一种开放的、基于XML的用于电子乐谱信息交换与电子乐谱发布的文件格式,其目标是构建一种针对音乐记谱的通用格式,支持记谱、分析、信息检索、排版布局。该格式中所定义的音乐信息可以被绝大多数音乐软件(超过140种)识别和应用,包括记谱软件、音序软件、演奏软件、音乐教育软件,以及音乐数据库等。MusicXML包含了乐谱信息及其描述信息,如作者、谱号、调号、小节、音高、音长、旋律、节奏、和弦、圆滑音等。MusicXML中元素297个,属性226个,实体59个,元素用来描述数据,属性用来描述元数据。MusicXML有两种记谱方式:一种按照声部记录,采用横向方向组织音乐数据,音符组成小节,小节组成组成声部,声部组成乐谱,以 ...
【技术保护点】
1.一种基于MusicXML乐谱到盲文的转换方法及系统,其特征在于:包括一种基于MusicXML乐谱到盲文的转换方法(简称“方法”)以及一种基于MusicXML乐谱到盲文的转换系统(简称“系统”)两部分;所述的系统主要包括:用户界面层、转换逻辑层;用户界面层是一种为用户提供相应服务的图形化界面,服务于用户转换MusicXML乐谱到盲文和盲文ASCII码;用户界面层包括:MusicXML乐谱录入模块、乐谱格式设置模块以及结果预览模块;MusicXML乐谱录入模块用于输入要转换的MusicXML乐谱,有代码录入和MusicXML文件上传两个单元;乐谱格式设置模块包括盲文排版设置单元和转换结果选择单元,盲文排版设置单元用于设置每行小节数、每页行数、每行方数,转换结果选择单元用于选择显示盲文点字还是盲文ASCII码;结果预览模块用于显示转换结果,并且可下载转换的盲文ASCII码和盲文点字;转换逻辑层为用户提供转换策略、模式和方法,同时把封装好的模式和方法用于转换用户输入的MusicXML乐谱;转换逻辑层包括:预处理模块、转换模块、精简化处理模块;预处理模块主要包括:获取MusicXML乐谱单元 ...
【技术特征摘要】
1.一种基于MusicXML乐谱到盲文的转换方法及系统,其特征在于:包括一种基于MusicXML乐谱到盲文的转换方法(简称“方法”)以及一种基于MusicXML乐谱到盲文的转换系统(简称“系统”)两部分;所述的系统主要包括:用户界面层、转换逻辑层;用户界面层是一种为用户提供相应服务的图形化界面,服务于用户转换MusicXML乐谱到盲文和盲文ASCII码;用户界面层包括:MusicXML乐谱录入模块、乐谱格式设置模块以及结果预览模块;MusicXML乐谱录入模块用于输入要转换的MusicXML乐谱,有代码录入和MusicXML文件上传两个单元;乐谱格式设置模块包括盲文排版设置单元和转换结果选择单元,盲文排版设置单元用于设置每行小节数、每页行数、每行方数,转换结果选择单元用于选择显示盲文点字还是盲文ASCII码;结果预览模块用于显示转换结果,并且可下载转换的盲文ASCII码和盲文点字;转换逻辑层为用户提供转换策略、模式和方法,同时把封装好的模式和方法用于转换用户输入的MusicXML乐谱;转换逻辑层包括:预处理模块、转换模块、精简化处理模块;预处理模块主要包括:获取MusicXML乐谱单元,验证MusicXML乐谱规范化单元;转换模块主要包括:MusicXMLDOM解析单元,MusicXML乐谱元素遍历模块;MusicXML乐谱元素遍历模块又包括:乐谱基本信息处理单元、乐谱谱号处理单元、乐谱调号处理单元、乐谱拍号处理单元、乐谱音符处理单元、乐谱和弦处理单元、乐谱连音处理单元、乐谱力度、速度和表情记号处理单元、乐谱装饰音处理单元以及乐谱变音记号处理单元;精简化模块包括:盲文乐谱精简化处理单元、盲文乐谱排版处理单元以及盲文乐谱结果处理单元。2.如权利要求1所述的一种基于MusicXML乐谱到盲文的转换方法及系统,其特征还在于:所述的一种基于MusicXML乐谱到盲文的转换方法,主要包括如下步骤:步骤一、MusicXML乐谱输入及预处理;步骤二、MusicXML乐谱遍历及转换为盲文;步骤三、盲文乐谱精简化及排版输出。3.如权利要求2所述的一种基于MusicXML乐谱到盲文的转换方法,其特征还在于:具体的,步骤一包括:步骤1.1获取MusicXML乐谱;第一种方案是手动输入MusicXML代码;第二种方案是直接上传MusicXML文件;步骤1.2验证MusicXML乐谱规范化;将步骤1.1获取的MusicXML内容,使用MusicXMLSchema或MusicXMLDTD对MusicXML乐谱进行自动检查;若符合标准,则继续进行下一个步骤,若不符合标准则提示用户修改乐谱。4.如权利要求2所述的一种基于MusicXML乐谱到盲文的转换方法,其特征还在于:步骤二、对步骤一输出的MusicXML乐谱进行遍历并转换为盲文,具体包括以下几步:步骤2.1将步骤一预处理的MusicXML乐谱,根据不同的浏览器分别使用DOMParser方法或ActiveXObject方法,解析为XMLDOM形式;步骤2.2对MusicXML乐谱的元素进行遍历,并依次转换为盲文。5.如权利要求4所述的一种基于MusicXML乐谱到盲文的转换方法,其特征还在于:步骤2.2对MusicXML乐谱的元素进行遍历,并依次转换为盲文,具体为:步骤2.2.1乐谱头部信息处理,扫描并获取乐谱的work节点及子节点work-number、work-title节点,或获取movement-title节点作为乐谱标题,获取第1个音乐小节key节点作为调号,time节点作为拍号,credit-words节点作为音乐基本显示属性;接着获取identification节点及里边的详细信息,之后按照标准对照表转换为ASCII码和盲文;这些信息作为起始信息,放置在盲文乐谱最前面;步骤2.2.2乐谱主题信息处理,循环遍历part节点;步骤2.2.3循环遍历measure节点;步骤2.2.4乐谱谱号处理;获取measure节点中的attributes节点,判断是否存在staves子节点,如果存在该子节点,获取该节点的值,根据值的内容,得到乐谱的具体谱号类型;对于measure的每个子节点,如果存在staff节点,则根据staff节点的值来归属对应谱号的信息,staff节点值为1转换为盲文乐谱中的高音谱或右手谱,staff节点值为2表示为低音谱或左谱,之后按照标准对照表转换为ASCII码和盲文;如果不存在staff子节点,则直接进入下一个步骤处理;步骤2.2.5乐谱调号处理;遍历到attributes节点时,判断是否存在key子节点;如果存在该子节点,获取属于key节点下面的fifths节点和mode节点的值,然后根据此两项值的内容,转换为对应的调号值,之后按照标准对照表转换为ASCII码和盲文;如果不存在key子节点,则直接进入下一个步骤处理;步骤2.2.6乐谱拍号处理;遍历到attributes节点时,判断是否存在time子节点;如果存在该子节点,获取属于time节点下面的beats节点和beat-type节点的值,然后根据此两项值的内容,转换为对应的拍号值,之后按照标准对照表转换为ASCII码和盲文;如果不存在time子节点,则直接进入下一个步骤处理;步骤2.2.7乐谱音符处理;获取measure节点中的note节点,判断当前节点是不是和弦节点,接着获取type节点值和属于pitch节点下面的step节点和octave节点的值,然后根据这三项值的内容,转换为对应的音乐符号和音乐时值,之后按照标准对照表转换为ASCII码和盲文;如果不存在pitch子节点,则直接进入下一个步骤处理;步骤2.2.8乐谱和弦处理;获取measure节点中的note节点,判断当前节点是不是和弦节点,接着判断紧跟同为staff值的下一个note节点是否为和弦节点,一直到同为staff值后面的note节点中的不是和弦节点为止;记录此过程中的每个note节点的音符、时值和音程;如果staff值为1,即为高音谱或者右手谱,音程的计算从高到低计算,将音程最高的note音符作为根音符,紧跟其后的note音符仅表示为音程之差值;如果staff值为2,即为低音谱或者左手谱,音程的计算从低到高计算,将音程最低的note音符作为根音符,紧跟其后的no...
【专利技术属性】
技术研发人员:苏伟,吴尽昭,蔡川,林和,刘莉,
申请(专利权)人:兰州大学,
类型:发明
国别省市:甘肃,62
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。