[发明专利]动态解析mat文件的方法及装置在审
申请号: | 201910871224.2 | 申请日: | 2019-09-16 |
公开(公告)号: | CN110597517A | 公开(公告)日: | 2019-12-20 |
发明(设计)人: | 余立奇;林婷 | 申请(专利权)人: | 苏州思必驰信息科技有限公司 |
主分类号: | G06F8/41 | 分类号: | G06F8/41 |
代理公司: | 11400 北京商专永信知识产权代理事务所(普通合伙) | 代理人: | 李彬彬;田孝谦 |
地址: | 215123 江苏省苏州市苏*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 目标格式 数据结构 解析 动态解析 读取 获取文件 脚本代码 目标文件 数据格式 文件内容 遍历 递归 写入 统一 | ||
本发明公开了一种动态解析mat文件的方法,其包括:读取mat文件;依次获取文件中的数据进行数据结构判断,并递归遍历数据结构为第一目标格式的数据,直至获取到数据结构为第二目标格式的数据;将获取到的第二目标格式的数据写入目标文件。本发明还提供了一种动态解析mat文件的装置,根据本发明的装置和方法,可以避免现有技术中解析mat文件时需要根据mat文件内容或数据格式的变化而随时更改解析脚本代码的弊端,实现对各种mat文件的动态、实时和统一的解析,提高效率和正确性。
技术领域
本发明涉及数据处理技术领域,特别是一种动态解析mat文件的方法及装置。
背景技术
MATLAB(matrix&laboratory,矩阵实验室)是美国MathWorks公司出品的商业数学软件,是研究算法的绝妙软件,许多算法研究工程师都在MATLAB上设计验证自己的算法。而mat文件是MATLAB的数据存储的标准格式,在MATLAB中打开显示类似于单行EXCEL表格,其内常常存储着算法所需要的数据。因而当要将算法工程化移植到不同平台上应用时,也要将算法所需要数据进行移植,这时就涉及到了对mat文件的解析以生成其他平台可以直接读取的数据。
目前一般的做法是直接在MATLAB中打开mat文件,并根据已知的键值(即key的值)来获取对应的数据值(即value的值),并将获取到的数据值按一定的规则写入相应的以供其他平台读取的文件。这样虽然能够简单方便的实现算法数据的移植,但每当mat文件的内容变化时(例如键值或数据值的内容或类型发生变化时)或每次遇到新的mat文件,都会需要重新修改mat文件的解析代码,才能正确生成其他平台可读取的数据文件,时间成本较高,且操作比较麻烦。
发明内容
本发明的第一目的在于提供一种能够进行实时动态解析mat文件的技术方案,以实现对mat文件的自动化动态解析,解决每次mat文件变化都需要修改代码的缺陷。
本发明的第二目的还在于在广泛通用的应用环境下实现这一技术方案,从而使得研发工作人员都可以方便快捷地应用本申请的技术方案来解决算法移植时所需算法数据的移植问题。
根据本发明的第一方面,提供了一种动态解析mat文件的方法,包括读取mat文件;依次获取文件中的数据进行数据结构判断,并递归遍历数据结构为第一目标格式的数据,直至获取到数据结构为第二目标格式的数据;将获取到的第二目标格式的数据写入目标文件。在读取mat文件后,通过递归遍历的方式进行数据结构判断,以最终获取第二目标格式的数据,能够实现对mat文件的动态和实时解析,不依赖具体的键值就能获取到所有的符合需求的数据值,因而能够实现对不同mat文件的统一解析,不需要再关心具体的键值和数据结构,避免了需要基于mat文件数据的内容和数据结构变化来反复修改解析脚本代码的弊端,大大提高效率,且提高读取出的数据的准确性,保证数据转换过程中的稳定性。
在一些实施方式中,第一目标格式包括字典和数组,第二目标格式为数字。由此,可以实现对字典和数组结构类型的数据进行层层解析,最终得到数字结构类型的目标结果,实现对mat文件的有目的的数据转换过程,以高效满足用户需求。另外,字典和数组基本能够覆盖mat文件的较复杂数据结构特征,因而通过对字典和数组类型的数据结构进行递归遍历,能够最终实现获取到数字类型的数据值,既能够基本满足用户对算法数据的移植需求,也能够有效过滤掉噪音数据,提高数据转换效率
在一些实施方式中,目标文件为二进制文件,在将获取到的第二目标格式的数据写入目标文件前还对第二目标格式的数据进行二进制转换。由此,可以将数字结构类型的数据转换为二进制数据导出,这样在利用目标文件中的算法数据时,能够基于二进制数据的特征方便快速地进行数据还原,大大提高还原算法数据的效率。
在一些实施方式中,依次获取文件中的数据进行数据结构判断,并递归遍历数据结构为第一目标格式的数据,直至获取到数据结构为第二目标格式的数据包括
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于苏州思必驰信息科技有限公司,未经苏州思必驰信息科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910871224.2/2.html,转载请声明来源钻瓜专利网。