CN115981798A - 文件解析方法、装置、计算机设备及可读存储介质 - Google Patents
文件解析方法、装置、计算机设备及可读存储介质 Download PDFInfo
- Publication number
- CN115981798A CN115981798A CN202310275242.0A CN202310275242A CN115981798A CN 115981798 A CN115981798 A CN 115981798A CN 202310275242 A CN202310275242 A CN 202310275242A CN 115981798 A CN115981798 A CN 115981798A
- Authority
- CN
- China
- Prior art keywords
- container
- file
- field
- parameter
- neural network
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000004458 analytical method Methods 0.000 title claims abstract description 38
- 238000013528 artificial neural network Methods 0.000 claims abstract description 73
- 230000011218 segmentation Effects 0.000 claims abstract description 25
- 238000000034 method Methods 0.000 claims description 47
- 238000001514 detection method Methods 0.000 claims description 15
- 238000004590 computer program Methods 0.000 claims description 6
- 238000000605 extraction Methods 0.000 claims description 4
- 238000006243 chemical reaction Methods 0.000 claims description 3
- 230000010354 integration Effects 0.000 claims description 3
- 238000012545 processing Methods 0.000 abstract description 13
- 230000006870 function Effects 0.000 description 22
- 238000010586 diagram Methods 0.000 description 15
- 238000004891 communication Methods 0.000 description 7
- 238000004364 calculation method Methods 0.000 description 6
- 230000004044 response Effects 0.000 description 4
- 210000002569 neuron Anatomy 0.000 description 3
- 230000003068 static effect Effects 0.000 description 3
- 230000001133 acceleration Effects 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 239000003795 chemical substances by application Substances 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000018109 developmental process Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000005484 gravity Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000005236 sound signal Effects 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000007599 discharging Methods 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000010079 rubber tapping Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000010897 surface acoustic wave method Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- 239000011800 void material Substances 0.000 description 1
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请公开了一种文件解析方法、装置、计算机设备及可读存储介质,所述文件解析方法包括:响应于文件解析指令,获取待解析文件,所述待解析文件为包括多个第一容器以及至少一个第二容器的文件,一个所述第一容器对应一个神经网络参数;识别所述待解析文件的文件头;对所述文件头进行字符分割,得到所述第一容器对应的第一字段以及所述第二容器对应的第二字段;基于所述第一字段和第二字段,输出目标神经网络参数。本申请提供的文件解析方案可以提高文件解析的效率,进而提高神经网络的处理效率。
Description
技术领域
本申请涉及数据处理领域,具体涉及一种文件解析方法、装置、计算机设备及可读存储介质。
背景技术
随着人工智能技术的发展,神经网络应用到越来越多的领域,对人们的生产和生活带来了改善。神经网络是一种神经网络学习算法,是由输入层、中间层、输出层组成的阶层型神经网络,中间层可扩展为多层。相邻层之间各神经元进行全连接,而每层各神经元之间无连接,网络按有教师示教的方式进行学习,当一对学习模式提供给网络后,各神经元获得网络的输入响应产生连接权值(Weight)。然后按减小希望输出与实际输出误差的方向,从输出层经各中间层逐层修正各连接权,回到输入层。此过程反复交替进行,直至网络的全局误差趋向给定的极小值,即完成学习的过程。
目前,神经网络具有很多种类,比如前馈神经网络、径向基神经网络、感知器神经网络、线性神经网络、自组织神经网络以及反馈神经网络等等。其中,每个神经网络都包含多种信息参数,比如网络图、辅助信息、权重数据、NPU指令代码、编译器生成的其它相关信息等,计算平台在使用神经网络时需要调用上述参数,而常见的计算平台中的内存资源极其有限,也不支持文件系统,因此只能从外存中调用上述参数,导致神经网络处理效率较低。
发明内容
针对上述技术问题,本申请提供一种文件解析方法、装置、计算机设备及可读存储介质,可以提高文件解析的效率,进而提高神经网络的处理效率。
为解决上述技术问题,本申请提供一种文件解析方法,包括:
响应于文件解析指令,获取待解析文件,所述待解析文件为包括多个第一容器以及至少一个第二容器的文件,一个所述第一容器对应一个神经网络参数;
识别所述待解析文件的文件头;
对所述文件头进行字符分割,得到所述第一容器对应的第一字段以及所述第二容器对应的第二字段;
基于所述第一字段和第二字段,输出目标神经网络参数。
可选的,在本申请的一些实施例中,所述基于所述第一字段和第二字段,输出目标神经网络参数,包括:
将所述第一字段确定为对应第一容器的首地址,并将赋址后的第一容器转换为预设结构;
对转换为预设结构的第一容器进行信息提取,得到第一参数;
遍历所述第二字段,输出第二参数,并整合所述第一参数和第二参数,得到目标神经网络参数。
可选的,在本申请的一些实施例中,所述遍历所述第二字段,输出第二参数,包括:
检测所述第二字段是否包含目标类型的成员;
基于检测结果依次获取每类成员的值,得到第二参数。
可选的,在本申请的一些实施例中,所述基于检测结果依次获取每类成员的值,得到第二参数,包括:
当检测到所述第二字段包含字节类型的成员时,依次获取字节类型的成员对应的值,和/或;
当检测到所述第二字段包含短整类型的成员时,依次获取短整类型的成员对应的值,和/或;
当检测到所述第二字段包含整数类型的成员时,依次获取整数类型的成员对应的值,和/或;
当检测到所述第二字段包含数组类型的成员时,依次获取数组类型的成员对应的值。
可选的,在本申请的一些实施例中,所述对转换为预设结构的第一容器进行信息提取,得到第一参数,包括:
对转换为预设结构的第一容器进行容器类型识别;
获取与识别结果对应的容器解析策略;
基于所述容器解析策略对所述第一容器进行解析,得到第一参数。
相应的,本申请还提供一种文件解析装置,包括:
获取模块,用于响应于文件解析指令,获取待解析文件,所述待解析文件为包括多个第一容器以及至少一个第二容器的文件,一个所述第一容器对应一个神经网络参数;
识别模块,用于识别所述待解析文件的文件头;
分割模块,用于对所述文件头进行字符分割,得到所述第一容器对应的第一字段以及所述第二容器对应的第二字段;
输出模块,用于基于所述第一字段和第二字段,输出目标神经网络参数。
可选的,在本申请的一些实施例中,所述输出模块包括:
确定单元,用于将所述第一字段确定为对应第一容器的首地址;
转换单元,用于将赋址后的第一容器转换为预设结构;
提取单元,用于对转换为预设结构的第一容器进行信息提取,得到第一参数;
输出单元,用于遍历所述第二字段,输出第二参数;
整合单元,用于整合所述第一参数和第二参数,得到目标神经网络参数。
可选的,在本申请的一些实施例中,所述输出单元包括:
检测子单元,用于检测所述第二字段是否包含目标类型的成员;
输出子单元,用于基于检测结果依次获取每类成员的值,得到第二参数。
本申请还提供一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现如上述方法的步骤。
本申请还提供一种计算机存储介质,所述计算机存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如上述方法的步骤。
如上所述,本申请提供一种文件解析方法、装置、计算机设备及可读存储介质,响应于文件解析指令,获取待解析文件,所述待解析文件为包括多个第一容器以及至少一个第二容器的文件,一个所述第一容器对应一个神经网络参数,然后,识别所述待解析文件的文件头,接着,对所述文件头进行字符分割,得到所述第一容器对应的第一字段以及所述第二容器对应的第二字段,最后,基于所述第一字段和第二字段,输出目标神经网络参数。在本申请提供的文件解析方案中,可以识别整合有多个容器的待解析文件的文件头,并对该文件头进行字符分割,从而得到第一字段和第二字段,最后,利用该第一字段和第二字段,输出目标神经网络参数,即,在后续需要获取神经网络的网络参数时,可以根据文件头快速地从内存中获取到需要获取的网络参数,无需从外存中调用上述网络参数,因此,可以提高文件解析的效率,进而提高神经网络的处理效率。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。为了更清楚地说明本申请实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的文件解析方法的场景示意图;
图2是本申请实施例提供的文件解析方法的流程示意图;
图3是本申请实施例提供的硬件平台的结构示意图
图4是本申请实施例提供的文件解析装置的结构示意图
图5是本申请实施例提供的智能终端的结构示意图。
本申请目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。通过上述附图,已示出本申请明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本申请构思的范围,而是通过参考特定实施例为本领域技术人员说明本申请的概念。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素,此外,本申请不同实施例中具有同样命名的部件、特征、要素可能具有相同含义,也可能具有不同含义,其具体含义需以其在该具体实施例中的解释或者进一步结合该具体实施例中上下文进行确定。
应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
在后续的描述中,使用用于表示元件的诸如“模块”、“部件”或者“单元”的后缀仅为了有利于本申请的说明,其本身没有特定的意义。因此,“模块”、“部件”或者“单元”可以混合地使用。
以下对本申请涉及的实施例进行具体描述,需要说明的是,在本申请中对实施例的描述顺序不作为对实施例优先顺序的限定。
本申请实施例提供一种文件解析方法、装置、计算机设备及可读存储介质。
其中,该文件解析装置具体可以集成在终端中。终端可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表等,但并不局限于此。终端与服务器之间可以通过有线或无线通信方式进行直接或间接地连接,服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础云计算服务的云服务器,本申请在此不做限制。
例如,请参阅图1,本申请提供一种文件解析平台,该文件解析平台预先存储有至少一个整合文件,该整合文件包括多个第一容器,一个第一容器对应一个神经网络参数,可选地,在一些实施例中,该整合文件还可以包括至少一个第二容器,该第二容器为用户自定义的容器,其携带有针对神经网络的自定义网络参数,如特征图的尺寸、以及网络层的数量等等,具体可以根据实际情况进行设置。
用户在需要使用某个整合文件的神经网络时,可以通过该文件解析平台选择相应的神经网络,即,文件解析平台响应用户针对整合文件的选择操作,将选择的整合文件确定为待解析文件,并生成针对该待解析文件的文件解析指令,文件解析平台响应于文件解析指令,获取待解析文件,然后,文件解析平台识别该待解析文件的文件头,接着,文件解析平台对该文件头进行字符识别,识别得到第一容器对应的第一字段以及第二容器对应的第二字段,最后,文件解析平台基于该第一字段和第二字段,输出目标神经网络参数。
本申请提供的文件解析方案,可以识别整合有多个容器的待解析文件的文件头,并对该文件头进行字符分割,从而得到第一字段和第二字段,最后,利用该第一字段和第二字段,输出目标神经网络参数,即,在后续需要获取神经网络的网络参数时,可以根据文件头快速地从内存中获取到需要获取的网络参数,无需从外存中调用上述网络参数,因此,可以提高文件解析的效率,进而提高神经网络的处理效率。
以下分别进行详细说明。需说明的是,以下实施例的描述顺序不作为对实施例优先顺序的限定。
一种文件解析方法,包括:响应于文件解析指令,获取待解析文件,识别所述待解析文件的文件头,对文件头进行字符分割,得到第一容器对应的第一字段以及第二容器对应的第二字段,基于第一字段和第二字段,输出目标神经网络参数。
请参阅图2,图2为本申请实施例提供的文件解析方法的流程示意图。该数文件解析方法的具体流程可以如下:
101、响应于文件解析指令,获取待解析文件。
其中,工程人员可以通过文件解析平台触发文件解析指令,由文件解析平台生成相应的文件解析指令,当接收到文件解析指令时,获取待解析文件。该待解析文件可以是预先构建的,其可以包括多个第一容器,且每个第一容器对应一个神经网络参数,其还可以包括至少一个第二容器,该第二容器存储有用户自定义神经网络的自定义网络参数。需要说明的是,当待解析文件包括多个第一容器和一个第二容器时,第二容器可以包含所有第一容器中神经网络的自定义网络参数,也可以仅包含其中的一个或多个;当待解析文件包括多个第一容器和多个第二容器时,一个第二容器对应一个第一容器,即,一个第二容器携带有一个神经网络的自定义网络参数,具体可以根据实际情况进行设定,在此不再赘述。
可选地,在一些实施例中,请参阅图3,本申请的文件解析平台可以是图2所示的硬件平台,其中,该硬件平台可以包括一个外存和多个计算模组,上述外存可以包括低速、非易失性存储模块、设备或等价物。比如flash、机械硬盘等,甚至可以是一个远程文件等。
可选地,在一些实施例中,上述计算模组中则包括主控制模组、至少一个计算核以及内存,其中内存可以为SRAM(StaticRandom-Access Memory,静态随机存取存储器)或DDRSDRAM(DoubleData Rate Synchronous Dynamic Random Access Memory,双倍数据率同步动态随机存取存储器),主控制模组Host可以为CPU,而至少一个计算核可以为DSP(DigitalSignal Processing,数字信号处理器)、NPU(Neural-networkProcessing Unit,嵌入式神经网络处理器)、GPU(graphicsprocessing unit,图形处理器)等。
需要说明的是,上述计算模组可以是物理上固定的,也可以是按需动态组合成的,每个计算模组的内存可能独立编址,也可能与其余一个或多个模组内存统一编址。在一实施例中,上述计算核分两种:即能自动地连续读取命令(可以是指令,也可以是配置参数)序列、译码并执行的称为主动核;否则称为被动核。其中,每个计算模组内的每一种主动核都需要进行编号,如图2中所示CPU、NPU_0、NPU_1等。多个相互独立的计算模组可同时运行,且每个计算模组可计算一个或多个神经网络,本申请对此不作进一步限定。
可选地,在一些实施例中,本申请将预设神经网络按照内部结构按级别从小到大进行了细致划分,具体可以包括特征图、网络层、网段、子网以及网络。其中,特征图(featuremap,简记为fm):即3维张量,3个纬度通常用H、W、C表示,合写即为HWC。其数据类型不计入纬度,用B独立表示。
网络层(layer):是神经网络经神经网络编译器预处理后的基本单位,也简称层。与通常所说的神经网络层(简称原始层)有区别:可能是某个原始层拆分后的一部分,也可能是多个连续原始层的融合。其输入为张量,通常以特征图为,输出为特征图。这里对网络层进一步细分为两种:一种是经神经网络工具链编译后能生成命令序列,且该命令序列能由某个主动核执行(计算)并得到输出特征图的层,称作CMD网络层;其余称作RAW网络层,即需要保留该网络层的原始信息,计算时由Host决定实际的计算方式、过程。
网段(segment):即满足某种条件的一个或连续多个网络层。也分两种:能在某个主动核上持续运行而不切换,称为CMD网段;否则称为RAW网段。需要说明的是,在调试或测试时,也有可能将每个CMD网络层单独作为一个CMD网段。
子网(subnet):即每一轮计算(对应一个输入特征图(简记为fi))中,计算频次都相同的一个或连续多个网段。也就是说中间没有条件判断造成的分叉、或循环。
网络(net):由逻辑关系组合在一起的一个或多个子网。常见的各种神经网络都只包含一个子网。网络各层的计算结果称为中间特征图。中间特征图可分为两类:需要保存且参与后续某轮计算的称为静态(static)特征图;其余的(即不参与后续轮计算的)称为局域(local)特征图。
在一实施例中,还可以进一步定义一个高层概念,比如为网组(group),可以由逻辑关系组合在一起的多个网络构成。
102、识别待解析文件的文件头。
本申请提供一种特殊的文件存储方式,即,将特征图、网络层、网段、子网、网络分别存储在不同的容器中,因此,在建立待解析文件时,新建多个容器并分别将上述提取到的特征图、网络层、网段、子网、网络进行存储。
在一实施例中,上述容器可以分为两类,一类是仅含容器头(header),另一类则包含容器头和数据(data)。容器的关键特征是长度,因此在计算容器的长度时,若容器仅含容器头,则直接获取容器头的固定长度即可,比如cIRIFF_FM_SHAPE的长度即sizeof(cIRIFF_FM_SHAPE)。若容器头包含一个成员,比如size,则可以直接指明本容器的长度,也即本bin的字节数。还可以通过容器头包含的某些成员以及结合容器的隐含要求(比如4字节对齐)间接计算出指明本容器的长度等等。
可选地,在一些实施例中,考虑到易用性以及兼容性,为了方便用户在某些级别按需加入一些自定义的辅助网络信息,因此本实施例还可以定义用户自定义数组容器以及用户自定义结构体容器。此外,为了便于软硬件研发过程中的调试和测试,还可以定义参考特征图容器以及参考特征图数组容器。
可选地,在一些实施例中,将容器的容器头依次存储在文件的文件头中,可以理解的是,在需要获取神经网络参数时,需要识别待解析文件的文件头,以便后续进行文件解析。
103、对文件头进行字符分割,得到第一容器对应的第一字段以及第二容器对应的第二字段。
可选地,在一些实施例中,可以识别文件头中的分割符从而对文件头进行字符分割,还可以识别文件头中的预设字符,从而实现对文件头进行字符分割,具体可以根据实际情况而定,在此不再赘述。
104、基于第一字段和第二字段,输出目标神经网络参数。
例如,具体的,可以令第一容器头的首地址等于对应容器的首地址,然后强制类型转换为该第一容器对应的结构,各成员直接一一对应,同时,遍历第二字段中的成员,得到第二参数,最后,整合第一参数和第二参数,输出目标神经网络参数,即,可选地,在一些实施例中,步骤“基于第一字段和第二字段,输出目标神经网络参数”,具体可以包括:
(11)将第一字段确定为对应第一容器的首地址,并将赋址后的第一容器转换为预设结构;
(12)对转换为预设结构的第一容器进行信息提取,得到第一参数;
(13)遍历第二字段,输出第二参数,并整合第一参数和第二参数,得到目标神经网络参数。
针对于第一容器,可以根据不同容器类型对应的容器解析策略对第一容器进行解析,从而得到第一参数,即,可选地,在一些实施例中,步骤“对转换为预设结构的第一容器进行信息提取,得到第一参数”,具体可以包括:
(21)对转换为预设结构的第一容器进行容器类型识别;
(22)获取与识别结果对应的容器解析策略;
(23)基于容器解析策略对第一容器进行解析,得到第一参数。
可选地,该第一容器具体可以为文件容器、网络容器、参考特征图数组容器、参考特征图容器、子网容器、CMD网段容器、RAW网段容器或RAW网络层容器,针对不同的容器,具体解析过程如下:
文件容器解析
(1)检查
比如magic、version、CRC等等,很简单,不解释
(2)查找某个网络(即网络容器cIRIFF_BIN_NET定位)
根据输入,有2种方法:一是指定网络序号;另一种是指定网络名称、模组名称。两者具体流程类似,但后者的易用性更友好,推荐使用后者。下面给出后者的流程。
推荐其函数原形为cIRIFF_NET *GetNet(cIRIFF_FILE*file_ptr, char*name,char *module);
输入:
1、file_ptr:IRIFF文件在外存(或内存)中的首地址
2、name:网络名称(字符串)的首地址
3、module:硬件模组名称(字符串)的首地址
输出:
等于0:未找到
等于非0:已找到的网络容器首地址net_ptr。
网络容器解析
(1)查找某个子网(即子网容器cIRIFF_BIN_SUBNET定位)
推荐其函数原形为cIRIFF_SUBNET*GetSubnet(cIRIFF_NET*net_ptr, uint8_tsub_idx);
输入:
1、net_ptr:网络容器的首地址
2、sub_idx:子网序号。要求大于0且小于等于subnets_num
输出:
等于0:未找到
等于非0:已找到的子网容器首地址sub_ptr
(2)定位profile的首地址profile_ptr
当profile_sz= 0时,无profile
当profile_sz〉0时,profile_ptr=sub_ptr+sizeof(cIRIFF_NET) + subnets_sz
(3)定位weights(权重参数)的首地址weights_ptr
当weights_sz= 0时,无weights
当weights_sz〉0时,weights_ptr=sub_ptr + sizeof(cIRIFF_NET)+subnets_sz+ padding1_sz ,其中padding1_sz表示按需对齐时的padding长度(以下雷同,不再赘述)。
(4)定位commands(命令序列)的首地址commands_ptr
当commands_sz= 0时,无commands
当commands_sz〉 0时,commands_ptr= weights_ptr + weights_sz+ padding2_sz
(5)定位ref_fm_array(参考特征图数组)的首地址ref_fm_array_ptr
有两种方式判断有无参考特征图数组,一是用ref_fm_flag;另一种是用cIRIFF_NET.size- (cIRIFF_BIN_NET前部分的长度+cIRIFF_BIN_NET中部分的长度)。前一种更快,下面仅介绍它。
当ref_fm_flag= 0时,无ref_fm
当ref_fm_flag= 1时,ref_fm_array_ptr = commands_ptr +commands_sz +padding3_sz。
参考特征图数组容器解析
(1)定位fm的首地址fm_ptr
fm_ptr= ref_fm_array_ptr+ sizeof(cIRIFF_REF_FM_ARRAY)
(2)查找某个参考特征图(即参考特征图容器cIRIFF_BIN_REF_FM定位)
推荐其函数原形为cIRIFF_REF_FM *GetRefFm(cIRIFF_REF_FM_ARRAY*ref_fm_array_ptr,uint16_t frame_idx,int16_tlayer_id);
输入:
1、ref_fm_array_ptr:参考特征图数组的首地址
2、frame_idx:参考特征图帧序号。要求大于等于start_frame且小于等于end_frame
3、layer_id:参考特征图所在网络层的id。
输出:
等于0:未找到
等于非0:已找到的参考特征图容器首地址ref_fm_ptr
参考特征图容器解析
(1)定位fm_data的首地址fm_data_ptr
fm_data_ptr =ref_fm_ptr+ sizeof(cIRIFF_REF_FM)
子网容器解析
(1)定位inputs(子网输入)的首地址inputs_ptr
inputs_ptr =sub_ptr + sizeof(cIRIFF_SUBNET)
(2)查找某个子网输入特征图(即输入特征图详细信息容器cIRIFF_FM_DETAIL定位)
推荐其函数原形为cIRIFF_FM_DETAIL *GetInput(cIRIFF_SUBNET*sub_ptr,uint8_t input_idx);
输入:
1、sub_ptr:子网容器的首地址
2、input_idx:输入特征图序号。要求大于0且小于等于inputs_num
输出:
等于0:未找到
等于非0:已找到的输入特征图容器首地址input_ptr
具体流程图非常类似查找某个子网,此处不再赘述。
(3)定位outputs(子网输出)的首地址outputs_ptr
outputs_ptr=sub_ptr+sizeof(cIRIFF_SUBNET)+sizeof(cIRIFF_SUBNET)*inputs_num
(4)查找某个子网输出特征图(即输出特征图详细信息容器cIRIFF_FM_DETAIL定位)
推荐其函数原形为cIRIFF_FM_DETAIL*GetOutput(cIRIFF_SUBNET *sub_ptr,uint8_t output_idx);
输入:
3、sub_ptr:子网容器的首地址
4、output_idx:输出特征图序号。要求大于0且小于等于outputs_num
输出:
等于0:未找到
等于非0:已找到的输入特征图容器首地址output_ptr
具体流程图非常类似查找某个子网,此处不再赘述。
(5)定位userdata的首地址userdata_ptr
当userdata_sz= 0时,无userdata
当userdata_sz〉 0时,userdata_ptr=sub_ptr + sizeof(cIRIFF_SUBNET) +sizeof(cIRIFF_SUBNET) *(inputs_num + outputs_num)
(6)定位网段数组的首地址segments_ptr
segments_ptr=userdata_ptr + userdata_sz
(7)查找某个网段即cIRIFF_BIN_CMD_SEGMENT/cIRIFF_BIN_RAW_SEGMENT的定位);推荐其函数原形为cIRIFF_SUBNET*GetSegment(cIRIFF_SUBNET *sub_ptr,uint16_tseg_idx);
输入:
1、sub_ptr:子网容器的首地址
2、seg_idx:网段序号。要求大于0且小于等于segments_num
输出:
等于0:未找到
等于非0:已找到的网段容器首地址seg_ptr
3.4.4.6CMD网段容器解析
(1)定位seg_cmd_flash_offset的首地址seg_cmd_flash_offset_ptr
seg_cmd_flash_offset_ptr= seg_ptr + sizeof(cIRIFF_CMD_SEGMENT)
(2)定位seg_wt_ram_offset的首地址seg_wt_ram_offset_ptr
当seg_cmd_len为负数时:
seg_wt_ram_offset_ptr=seg_cmd_flash_offset_ptr+sizeof(seg_cmd_flash_offset)
否则:
seg_wt_ram_offset_ptr= seg_cmd_flash_offset_ptr
(3)定位seg_wt_flash_offset的首地址seg_wt_flash_offset_ptr
seg_wt_flash_offset_ptr=seg_wt_ram_offset_ptr + sizeof(seg_wt_ram_offset)
RAW网段容器解析
(1)定位layers的首地址layers_ptr
layers_ptr =seg_ptr + sizeof(cIRIFF_RAW_SEGMENT)
(2)查找某个RAW网络层(即cIRIFF_BIN_RAW_LAYER定位)
推荐其函数原形为cIRIFF_BIN_RAW_LAYER*GetLayer(cIRIFF_RAW_SEGMENT *seg_ptr,uint16_t layer_idx);
输入:
1、seg_ptr:RAW网段容器的首地址
2、layer_idx:RAW网络层序号。要求大于0且小于等于layers_num
输出:
等于0:未找到
等于非0:已找到的RAW网络层容器首地址layer_ptr
3.4.4.8RAW网络层容器解析
(1)查找某个RAW网络层的输入特征图(即cIRIFF_FM_DETAIL定位)
推荐其函数原形为cIRIFF_FM_DETAIL *GetFi(cIRIFF_RAW_LAYER*layer_ptr,uint8_t fi_idx);
输入:
1、layer_ptr:RAW网络层容器的首地址
2、fi_idx:输入特征图序号。要求大于0且小于等于fi_num
输出:
等于0:未找到
等于非0:已找到的输入特征图容器首地址fi_ptr
此函数核心代码很简单:
fi_ptr= layer_ptr + sizeof(cIRIFF_RAW_LAYER)+ sizeof(cIRIFF_FM_DETAIL) *(fi_idx – 1)
(2)判断有无userdata
当本容器的size>sizeof(cIRIFF_RAW_LAYER)+ sizeof(cIRIFF_FM_DETAIL) *fi_num时有;否则无
(3)定位userdata的首地址layer_userdata_ptr
layer_userdata_ptr=layer_ptr + sizeof(cIRIFF_FM_DETAIL)* fi_num
针对于第二容器,其具体可以检测第二字段中是否包含目标类型的成员,如字节(byte)类型、短整(word)类型、整数(integer)类型和数组类型,基于检测结果,依次获取每类成员的值,从而得到第二参数,即,可选地,在一些实施例中,步骤“遍历第二字段,输出第二参数”,具体可以包括:
(31)检测第二字段是否包含目标类型的成员;
(32)基于检测结果依次获取每类成员的值,得到第二参数。
例如,具体的,先定义一个对象byte_object(以byte类为例),内含如下变量并赋值:
xxx_index= 0,
xxx_key_num=byte_key_num,
xxx_key_ptr =b_key,
xxx_value=b_value,
实现函数intGetValueByName(&xxxx_object, char *name, void *value),满足
输入:
1、xxxx_object的地址
2、name:成员名称(字符串)的首地址
3、value的地址:用于返回获取值
功能:
将name指向的字符串与xxx_key_ptr指向的多个连续字符串(非字符串数组)中的字符串逐一比较,有相等的,则取其值赋给value。
输出:
赋值成功返回1;否则返回0
针对于短整类型、整数类型和数组类型也可以采用同样的做法,即,可选地,在一些实施例中,步骤“基于检测结果依次获取每类成员的值,得到第二参数”,具体可以包括:
(41)当检测到第二字段包含字节类型的成员时,依次获取字节类型的成员对应的值,和/或;
(42)当检测到第二字段包含短整类型的成员时,依次获取短整类型的成员对应的值,和/或;
(43)当检测到第二字段包含整数类型的成员时,依次获取整数类型的成员对应的值,和/或;
(44)当检测到第二字段包含数组类型的成员时,依次获取数组类型的成员对应的值。
以上完成本申请的文件解析流程。
由上可知,本申请提供一种文件解析方法,在响应于文件解析指令,获取待解析文件后,识别待解析文件的文件头,接着,对文件头进行字符分割,得到第一容器对应的第一字段以及第二容器对应的第二字段,最后,基于第一字段和第二字段,输出目标神经网络参数,在本申请提供的文件解析方案中,可以识别整合有多个容器的待解析文件的文件头,并对该文件头进行字符分割,从而得到第一字段和第二字段,最后,利用该第一字段和第二字段,输出目标神经网络参数,即,在后续需要获取神经网络的网络参数时,可以根据文件头快速地从内存中获取到需要获取的网络参数,无需从外存中调用上述网络参数,因此,可以提高文件解析的效率,进而提高神经网络的处理效率。
为便于更好的实施本申请的文件解析方法,本申请还提供一种基于上述文件解析装置。其中名词的含义与上述文件解析方法中相同,具体实现细节可以参考方法实施例中的说明。
请参阅图4,图4为本申请提供的文件解析装置的结构示意图,其中该文件解析装置可以包括获取模块201、识别模块202、分割模块203以及输出模块204,具体可以如下:
获取模块201,用于响应于文件解析指令,获取待解析文件。
待解析文件可以是预先构建的,其可以包括多个第一容器,且每个第一容器对应一个神经网络参数,其还可以包括至少一个第二容器,该第二容器存储有用户自定义神经网络的自定义网络参数。其中,工程人员可以通过待解析文触发文件解析指令,获取模块201当接收到文件解析指令时,获取待解析文件。
识别模块202,用于识别所述待解析文件的文件头;
分割模块203,用于对文件头进行字符分割,得到第一容器对应的第一字段以及第二容器对应的第二字段。
可选地,在一些实施例中,分割模块203可以识别文件头中的分割符从而对文件头进行字符分割,分割模块203还可以识别文件头中的预设字符,从而实现对文件头进行字符分割。
输出模块204,用于基于第一字段和第二字段,输出目标神经网络参数。
例如,具体的,输出模块204可以令第一容器头的首地址等于对应容器的首地址,然后强制类型转换为该第一容器对应的结构,各成员直接一一对应,同时,遍历第二字段中的成员,得到第二参数,最后,整合第一参数和第二参数,输出目标神经网络参数。
可选地,在一些实施例中,输出模块204具体可以包括:
确定单元,用于将第一字段确定为对应第一容器的首地址;
转换单元,用于将赋址后的第一容器转换为预设结构;
提取单元,用于对转换为预设结构的第一容器进行信息提取,得到第一参数;
输出单元,用于遍历第二字段,输出第二参数;
整合单元,用于整合第一参数和第二参数,得到目标神经网络参数。
可选地,在一些实施例中,输出单元具体可以包括:
检测子单元,用于检测第二字段是否包含目标类型的成员;
输出子单元,用于基于检测结果依次获取每类成员的值,得到第二参数。
可选地,在一些实施例中,输出子单元具体可以用于:当检测到第二字段包含字节类型的成员时,依次获取字节类型的成员对应的值,和/或;当检测到第二字段包含短整类型的成员时,依次获取短整类型的成员对应的值,和/或;当检测到第二字段包含整数类型的成员时,依次获取整数类型的成员对应的值,和/或;当检测到第二字段包含数组类型的成员时,依次获取数组类型的成员对应的值。
可选地,在一些实施例中,提取单元具体可以用于:对转换为预设结构的第一容器进行容器类型识别;获取与识别结果对应的容器解析策略;基于容器解析策略对第一容器进行解析,得到第一参数。
由上可知,本申请提供一种文件解析装置,获取模块201在响应于文件解析指令,获取待解析文件后,识别模块202识别待解析文件的文件头,接着,分割模块203对文件头进行字符分割,得到第一容器对应的第一字段以及第二容器对应的第二字段,最后,输出模块204基于第一字段和第二字段,输出目标神经网络参数,在本申请提供的文件解析方案中,可以识别整合有多个容器的待解析文件的文件头,并对该文件头进行字符分割,从而得到第一字段和第二字段,最后,利用该第一字段和第二字段,输出目标神经网络参数,即,在后续需要获取神经网络的网络参数时,可以根据文件头快速地从内存中获取到需要获取的网络参数,无需从外存中调用上述网络参数,因此,可以提高文件解析的效率,进而提高神经网络的处理效率。
本领域普通技术人员可以理解,上述实施例的各种方法中的全部或部分步骤可以通过指令来完成,或通过指令控制相关的硬件来完成,该指令可以存储于一计算机可读存储介质中,并由处理器进行加载和执行。
本发明实施例还提供一种计算机设备500,如图5所示,该计算机设备500可以集成上述文件解析装置,还可以进一步包括射频(RF,Radio Frequency)电路501、包括有一个或一个以上计算机可读存储介质的存储器502、输入单元503、显示单元504、传感器505、音频电路506、无线保真(WiFi,Wireless Fidelity)模块507、包括有一个或者一个以上处理核心的处理器508、以及电源509等部件。本领域技术人员可以理解,图5中示出的计算机设备500结构并不构成对计算机设备500的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
RF电路501可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,交由一个或者一个以上处理器508处理;另外,将涉及上行的数据发送给基站。通常,RF电路501包括但不限于天线、至少一个放大器、调谐器、一个或多个振荡器、用户身份模块(SIM,SubscriberIdentity Module)卡、收发信机、耦合器、低噪声放大器(LNA,Low NoiseAmplifier)、双工器等。此外,RF电路501还可以通过无线通信与网络和其他设备通信。无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统(GSM,Global Systemof Mobile communication)、通用分组无线服务(GPRS ,GeneralPacketRadio Service)、码分多址(CDMA,Code DivisionMultiple Access)、宽带码分多址(WCDMA,Wideband CodeDivision Multiple Access)、长期演进(LTE,LongTermEvolution)、电子邮件、短消息服务(SMS,ShortMessaging Service)等。
存储器502可用于存储软件程序以及模块,处理器508通过运行存储在存储器502的软件程序以及模块,从而执行各种功能应用以及信息处理。存储器502可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、目标数据播放功能等)等;存储数据区可存储根据计算机设备500的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器502可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器502还可以包括存储器控制器,以提供处理器508和输入单元503对存储器502的访问。
输入单元503可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。具体地,在一个具体的实施例中,输入单元503可包括触敏表面以及其他输入设备。触敏表面,也称为触摸显示屏或者触控板,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触敏表面上或在触敏表面附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触敏表面可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器508,并能接收处理器508发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触敏表面。除了触敏表面,输入单元503还可以包括其他输入设备。具体地,其他输入设备可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
显示单元504可用于显示由用户输入的信息或提供给用户的信息以及计算机设备500的各种图形用户接口,这些图形用户接口可以由图形、文本、图标、视频和其任意组合来构成。显示单元504可包括显示面板,可选的,可以采用液晶显示器(LCD,Liquid CrystalDisplay)、有机发光二极管(OLED,Organic Light-EmittingDiode)等形式来配置显示面板。进一步的,触敏表面可覆盖显示面板,当触敏表面检测到在其上或附近的触摸操作后,传送给处理器508以确定触摸事件的类型,随后处理器508根据触摸事件的类型在显示面板上提供相应的视觉输出。虽然在图5中,触敏表面与显示面板是作为两个独立的部件来实现输入和输入功能,但是在某些实施例中,可以将触敏表面与显示面板集成而实现输入和输出功能。
计算机设备500还可包括至少一种传感器505,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板的亮度,接近传感器可在计算机设备500移动到耳边时,关闭显示面板和/或背光。作为运动传感器的一种,重力加速度传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等; 至于计算机设备500还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
音频电路506、扬声器,传声器可提供用户与计算机设备500之间的音频接口。音频电路506可将接收到的音频数据转换后的电信号,传输到扬声器,由扬声器转换为声音信号输出;另一方面,传声器将收集的声音信号转换为电信号,由音频电路506接收后转换为音频数据,再将音频数据输出处理器508处理后,经RF电路501以发送给比如另一计算机设备500,或者将音频数据输出至存储器502以便进一步处理。音频电路506还可能包括耳塞插孔,以提供外设耳机与计算机设备500的通信。
WiFi属于短距离无线传输技术,计算机设备500通过WiFi模块507可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图5示出了WiFi模块507,但是可以理解的是,其并不属于计算机设备500的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。
处理器508是计算机设备500的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器502内的软件程序和/或模块,以及调用存储在存储器502内的数据,执行计算机设备500的各种功能和处理数据,从而对手机进行整体监控。可选的,处理器508可包括一个或多个处理核心;优选的,处理器508可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器508中。
计算机设备500还包括给各个部件供电的电源509(比如电池),优选的,电源可以通过电源管理系统与处理器508逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源509还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源数据指示器等任意组件。
尽管未示出,计算机设备500还可以包括摄像头、蓝牙模块等,在此不再赘述。具体在本实施例中,计算机设备500中的处理器508会按照如下的指令,将一个或一个以上的应用程序的进程对应的可执行文件加载到存储器502中,并由处理器508来运行存储在存储器502中的应用程序,从而实现各种功能:响应于文件解析指令,获取待解析文件,识别所述待解析文件的文件头,对文件头进行字符分割,得到第一容器对应的第一字段以及第二容器对应的第二字段,基于第一字段和第二字段,输出目标神经网络参数。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见上文文件解析方法的详细描述,此处不再赘述。
由上可知,本发明实施例的计算机设备500可以识别整合有多个容器的待解析文件的文件头,并对该文件头进行字符分割,从而得到第一字段和第二字段,最后,利用该第一字段和第二字段,输出目标神经网络参数,即,在后续需要获取神经网络的网络参数时,可以根据文件头快速地从内存中获取到需要获取的网络参数,无需从外存中调用上述网络参数,因此,可以提高文件解析的效率,进而提高神经网络的处理效率。
本领域普通技术人员可以理解,上述实施例的各种方法中的全部或部分步骤可以通过指令来完成,或通过指令控制相关的硬件来完成,该指令可以存储于一计算机可读存储介质中,并由处理器进行加载和执行。
为此,本申请实施例还提供一种存储介质,其上存储有多条指令,所述指令适于处理器进行加载,以执行上述文件解析方法中的步骤。
以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
其中,该存储介质可以包括:只读存储器(ROM,Read OnlyMemory)、随机存取记忆体(RAM,Random AccessMemory)、磁盘或光盘等。
由于该存储介质中所存储的指令,可以执行本发明实施例所提供的任一种文件解析方法中的步骤,因此,可以实现本发明实施例所提供的任一种文件解析方法所能实现的有益效果,详见前面的实施例,在此不再赘述。
以上对本发明实施例所提供的文件解析方法、装置、系统及存储介质进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (10)
1.一种文件解析方法,其特征在于,包括:
响应于文件解析指令,获取待解析文件,所述待解析文件为包括多个第一容器以及至少一个第二容器的文件,一个所述第一容器对应一个神经网络参数;
识别所述待解析文件的文件头;
对所述文件头进行字符分割,得到所述第一容器对应的第一字段以及所述第二容器对应的第二字段;
基于所述第一字段和第二字段,输出目标神经网络参数。
2.根据权利要求1所述的方法,其特征在于,所述基于所述第一字段和第二字段,输出目标神经网络参数,包括:
将所述第一字段确定为对应第一容器的首地址,并将赋址后的第一容器转换为预设结构;
对转换为预设结构的第一容器进行信息提取,得到第一参数;
遍历所述第二字段,输出第二参数,并整合所述第一参数和所述第二参数,得到目标神经网络参数。
3.根据权利要求2所述的方法,其特征在于,所述遍历所述第二字段,输出第二参数,包括:
检测所述第二字段是否包含目标类型的成员;
基于检测结果依次获取每类成员的值,得到第二参数。
4.根据权利要求3所述的方法,其特征在于,所述基于检测结果依次获取每类成员的值,得到第二参数,包括:
当检测到所述第二字段包含字节类型的成员时,依次获取字节类型的成员对应的值,和/或;
当检测到所述第二字段包含短整类型的成员时,依次获取短整类型的成员对应的值,和/或;
当检测到所述第二字段包含整数类型的成员时,依次获取整数类型的成员对应的值,和/或;
当检测到所述第二字段包含数组类型的成员时,依次获取数组类型的成员对应的值。
5.根据权利要求2所述的方法,其特征在于,所述对转换为预设结构的第一容器进行信息提取,得到第一参数,包括:
对转换为预设结构的第一容器进行容器类型识别;
获取与识别结果对应的容器解析策略;
基于所述容器解析策略对所述第一容器进行解析,得到第一参数。
6.一种文件解析装置,其特征在于,包括:
获取模块,用于响应于文件解析指令,获取待解析文件,所述待解析文件为包括多个第一容器以及至少一个第二容器的文件,一个所述第一容器对应一个神经网络参数;
识别模块,用于识别所述待解析文件的文件头;
分割模块,用于对所述文件头进行字符分割,得到所述第一容器对应的第一字段以及所述第二容器对应的第二字段;
输出模块,用于基于所述第一字段和第二字段,输出目标神经网络参数。
7.根据权利要求6所述的装置,其特征在于,所述输出模块包括:
确定单元,用于将所述第一字段确定为对应第一容器的首地址;
转换单元,用于将赋址后的第一容器转换为预设结构;
提取单元,用于对转换为预设结构的第一容器进行信息提取,得到第一参数;
输出单元,用于遍历所述第二字段,输出第二参数;
整合单元,用于整合所述第一参数和所述第二参数,得到目标神经网络参数。
8.根据权利要求7所述的装置,其特征在于,所述输出单元包括:
检测子单元,用于检测所述第二字段是否包含目标类型的成员;
输出子单元,用于基于检测结果依次获取每类成员的值,得到第二参数。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至5中任一项所述文件解析方法的步骤。
10.一种可读存储介质,其特征在于,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至5中任一项所述文件解析方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310275242.0A CN115981798B (zh) | 2023-03-21 | 2023-03-21 | 文件解析方法、装置、计算机设备及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310275242.0A CN115981798B (zh) | 2023-03-21 | 2023-03-21 | 文件解析方法、装置、计算机设备及可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115981798A true CN115981798A (zh) | 2023-04-18 |
CN115981798B CN115981798B (zh) | 2023-08-01 |
Family
ID=85959955
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310275242.0A Active CN115981798B (zh) | 2023-03-21 | 2023-03-21 | 文件解析方法、装置、计算机设备及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115981798B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116506398A (zh) * | 2023-06-28 | 2023-07-28 | 天津中远海运散运数字科技有限公司 | 一种船舶邮件解析方法、装置、电子设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018188199A1 (zh) * | 2017-04-11 | 2018-10-18 | 平安科技(深圳)有限公司 | 理赔单据的字符识别方法、装置、服务器及存储介质 |
CN113158961A (zh) * | 2021-04-30 | 2021-07-23 | 中电鹰硕(深圳)智慧互联有限公司 | 基于智能笔手写图像的处理方法、装置、系统及存储介质 |
CN113936280A (zh) * | 2021-11-23 | 2022-01-14 | 河海大学 | 一种嵌入式仪表码盘字符自动识别系统及方法 |
CN115544304A (zh) * | 2022-10-12 | 2022-12-30 | 东软睿驰汽车技术(大连)有限公司 | 文件解析方法、装置、可读存储介质及文件解析设备 |
-
2023
- 2023-03-21 CN CN202310275242.0A patent/CN115981798B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018188199A1 (zh) * | 2017-04-11 | 2018-10-18 | 平安科技(深圳)有限公司 | 理赔单据的字符识别方法、装置、服务器及存储介质 |
CN113158961A (zh) * | 2021-04-30 | 2021-07-23 | 中电鹰硕(深圳)智慧互联有限公司 | 基于智能笔手写图像的处理方法、装置、系统及存储介质 |
CN113936280A (zh) * | 2021-11-23 | 2022-01-14 | 河海大学 | 一种嵌入式仪表码盘字符自动识别系统及方法 |
CN115544304A (zh) * | 2022-10-12 | 2022-12-30 | 东软睿驰汽车技术(大连)有限公司 | 文件解析方法、装置、可读存储介质及文件解析设备 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116506398A (zh) * | 2023-06-28 | 2023-07-28 | 天津中远海运散运数字科技有限公司 | 一种船舶邮件解析方法、装置、电子设备及存储介质 |
CN116506398B (zh) * | 2023-06-28 | 2023-11-07 | 天津中远海运散运数字科技有限公司 | 一种船舶邮件解析方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN115981798B (zh) | 2023-08-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108305296B (zh) | 图像描述生成方法、模型训练方法、设备和存储介质 | |
CN103702297B (zh) | 短信增强方法、装置及系统 | |
CN104852885B (zh) | 一种进行验证码验证的方法、装置和系统 | |
CN110110045B (zh) | 一种检索相似文本的方法、装置以及存储介质 | |
CN106293738A (zh) | 一种表情图像的更新方法及装置 | |
CN103607377B (zh) | 信息分享方法、装置及系统 | |
CN115981798B (zh) | 文件解析方法、装置、计算机设备及可读存储介质 | |
CN116933149A (zh) | 一种对象意图预测方法、装置、电子设备和存储介质 | |
CN111475843B (zh) | 一种数据处理方法和相关装置 | |
CN116795780A (zh) | 文档格式转换方法、装置、存储介质及电子设备 | |
CN116881143A (zh) | 一种数据对象复制异常排查方法、装置、设备及存储介质 | |
CN115412726B (zh) | 视频真伪检测方法、装置及存储介质 | |
CN112559532B (zh) | 一种基于红黑树的数据插入方法、装置及电子设备 | |
CN112667868B (zh) | 一种数据检测方法以及装置 | |
CN102171715A (zh) | 用于为上下文模型提供预测器节点的方法、设备和计算机程序产品 | |
CN109799994B (zh) | 一种终端组件生成方法及装置 | |
CN110503189B (zh) | 一种数据处理方法以及装置 | |
CN115982110B (zh) | 文件运行方法、装置、计算机设备及可读存储介质 | |
CN116150057B (zh) | 数据传输方法、装置、计算机设备及可读存储介质 | |
CN115525554B (zh) | 模型的自动化测试方法、系统及存储介质 | |
CN116564312B (zh) | 设备控制方法、装置、电子设备及可读存储介质 | |
CN112988406B (zh) | 远程调用方法、装置和存储介质 | |
CN116301898A (zh) | 神经网络信息整合方法、装置、系统及存储介质 | |
CN110472015B (zh) | 一种文本信息提取方法、装置、终端及存储介质 | |
CN116166274A (zh) | 神经网络信息整合方法、装置、系统及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
PE01 | Entry into force of the registration of the contract for pledge of patent right |
Denomination of invention: File parsing method, device, computer equipment, and readable storage medium Granted publication date: 20230801 Pledgee: Jiang Wei Pledgor: BEIJING INTENGINE TECHNOLOGY Co.,Ltd. Registration number: Y2024980019734 |
|
PE01 | Entry into force of the registration of the contract for pledge of patent right |