发明内容
本申请提供一种回波数据封装方法、装置、设备及可读存储介质,用以获得格式多样化的封装后的回波数据。
第一方面,本申请实施例提供一种回波数据封装方法,包括:
接收封装指令,所述封装指令包括待封装的回波数据的标识、用户设定的帧格式和序列信息;
根据所述待封装的回波数据的标识,获取待封装的回波数据,并根据所述用户设定的帧格式和序列信息,对所述回波数据进行封装,获得封装后的回波数据;其中,所述待封装的回波数据为数字信号,所述封装后的回波数据为帧序列数据。
进一步地,如上所述的方法,所述根据所述用户设定的帧格式和序列信息,对所述回波数据进行封装,获得封装后的回波数据,包括:
根据所述用户设定的帧格式和序列信息,对所述回波数据进行拆分获得目标数据帧;
为每个所述目标数据帧添加帧头,以获得封装后的回波数据;其中,所述帧头包括所述用户设定的帧格式。
进一步地,如上所述的方法,所述用户设定的帧格式包括单个图像的帧格式,所述待封装的回波数据包括单个图像对应的回波数据;所述根据所述用户设定的帧格式和序列信息,对所述回波数据进行拆分获得数据帧,包括:
根据所述单个图像的帧格式和序列信息,对所述单个图像对应的回波数据进行拆分获得单个图像对应的数据帧,将所述单个图像对应的数据帧作为所述目标数据帧。
进一步地,如上所述的方法,所述用户设定的帧格式包括多个图像的帧格式,所述待封装的回波数据包括多个图像对应的回波数据;所述根据所述用户设定的帧格式和序列信息,对所述回波数据进行拆分获得数据帧,包括:
根据所述多个图像的帧格式以及序列信息,分别对所述多个图像对应的回波数据进行拆分,获得各图像对应的数据帧,并将其作为所述目标数据帧;
所述为每个所述目标数据帧添加帧头,包括:
按照第一策略,为每个所述目标数据帧添加帧头,以获得封装后的回波数据;其中,所述第一策略包括:针对每个图像对应的数据帧,为该图像对应的每个数据帧添加帧头,所述帧头包括该图像的帧格式。
进一步地,如上所述的方法,所述获得封装后的回波数据之后,还包括:
接收发送指令,所述发送指令包括用户设定的发送速度;
将所述封装后的回波数据,按照所述用户设定的发送速度发送到后端处理平台进行处理。
进一步地,如上所述的方法,所述根据所述用户设定的发送速度,将所述封装后的回波数据发送到后端处理平台进行处理之后,还包括:
接收导出指令;所述导出指令包括用户设定的文件格式;
根据所述导出指令,将经过所述后端处理平台处理后的数据导出为设定格式的文件。
第二方面,本申请实施例提供一种回波数据封装装置,包括:
接收模块,用于接收封装指令,所述封装指令包括用户设定的帧格式和序列信息;
处理模块,用于获取待封装的回波数据,并根据所述用户设定的帧格式和序列信息,对所述回波数据进行封装,获得封装后的回波数据;其中,所述待封装的回波数据为数字信号,所述封装后的回波数据为帧序列数据。
第三方面,本申请实施例提供一种电子设备,包括:存储器,处理器;
存储器:用于存储所述处理器可执行指令的存储器;
其中,所述处理器用于调用所述存储器中的程序指令执行如第一方面所述的回波数据封装方法。
第四方面,本申请实施例提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如第一方面所述的回波数据封装方法。
第五方面,本申请实施例提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如第一方面所述的回波数据封装方法。
本申请提供一种回波数据封装方法、装置、设备及可读存储介质,接收包括用户设定的帧格式和序列信息的封装指令,获取待封装的回波数据,并根据用户设定的帧格式和序列信息,对回波数据进行封装,获得封装后的回波数据。也就是说,本申请以软件替代真实的超声探头,并根据用户自行定义的封装格式对回波数据进行封装,由于用户可以根据需求对封装格式进行多样化定义,因此采用该方法对回波数据进行封装,可以获得格式多样化的封装后的回波数据。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
随着技术的革新和发展,超声在日常生活中的应用越来越广泛。进行超声时,除了需要使用超声探头外,还需要配合使用相应的超声软件。在超声软件开发的过程中,需要使用大量的封装后的回波数据进行测试。
目前,通常通过真实的超声探头获得封装后的回波数据,但是,现有的超声探头都是基于私有协议定制的,也就是说,相同类型的超声探头的数据封装格式是单一且固定的,无法满足封装格式的多样化需求。虽然不同类型的超声探头的数据封装格式可能不同,但也很难满足需求,而且购买多个类型的超声探头会造成不必要的时间以及资金浪费。
本申请提供的回波数据封装方法、装置、设备及可读存储介质,旨在解决现有技术的如上技术问题。
下面以具体地实施例对本申请的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本申请的实施例进行描述。
图1为本申请实施例提供的一种***架构的示意图,如图1所示,该图1所示的***架构具体可以包括可扩展标记语言(XML)文件1,文件2以及服务器3,其中服务器3中设置有回波数据封装装置。
其中,XML文件1中存储有封装指令,也即用户设定的帧格式和序列信息。文件2中存储有待封装的回波数据,该待封装的回波数据可以通过真实的超声探头获取,也可以通过软件模拟获得,本实施例中不做限定,文件2的名称可以为待封装的回波数据的类型加名称后缀,如心脏加名称后缀、肝脏加名称后缀等,此外,文件2还有一个与之对应的存储有待封装的回波数据的描述信息的文件,该文件的名称可以为待封装的回波数据的类型加描述信息后缀,如心脏加描述信息后缀、肝脏加描述信息后缀等,该描述信息可用于表征待封装的回波数据的成像模式,其中,成像模式可以为单个图像的成像模式,单个图像的成像模式是单一的,例如单B图像模式、PW图像模式,也可以为多个图像的成像模式,多个图像的成像模式也即多个单个图像的成像模式的组合,例如B+C图像模式、B+PW图像模式,可以通过该描述信息对待封装的回波数据进行查找,也即可以将该描述信息作为待封装的回波数据的标识。回波数据封装装置可搭载于服务器3,用于接收XML文件1中存储的封装指令,获取文件2中存储的待封装的回波数据,并根据封装指令对回波数据进行封装。
实施例一
图2为本申请实施例提供的回波数据封装方法的流程图,如图2所示,本实施例提供的回波数据封装方法包括以下步骤:
步骤101、接收封装指令,所述封装指令包括待封装的回波数据的标识、用户设定的帧格式和序列信息。
步骤102、根据所述待封装的回波数据的标识,获取待封装的回波数据,并根据所述用户设定的帧格式和序列信息,对所述回波数据进行封装,获得封装后的回波数据;其中,所述待封装的回波数据为数字信号,所述封装后的回波数据为帧序列数据。
需要说明的是,本实施例提供的回波数据封装方法的执行主体可以为回波数据封装装置。在实际应用中,该回波数据封装装置可以通过计算机程序实现,例如应用软件,计算机程序等,也可以通过存储有相关计算机程序的介质,例如,U盘、光盘等实现;或者,还可以通过集成或安装有相关计算机程序的实体装置实现,例如,芯片等。
在本实施例中,为了获得满足需求的封装后的回波数据,以软件替代真实的超声探头,并根据用户自行定义的封装格式对回波数据进行封装。具体地,回波数据封装装置首先可以接收封装指令,该封装指令包括待封装的回波数据的标识、用户设定的帧格式和序列信息。
在实际应用中,在封装过程开始之前,用户可以根据需求,预先在XML文件中对帧格式和序列信息(也即数据封装格式)进行定义。
接下来,回波数据封装装置可以根据待封装的回波数据对应的描述信息,也即待封装的回波数据的标识,从存储待封装的回波数据的文件中获取待封装的回波数据,也可通过其他合适的方式获取,本实施例中对此不做限定,并根据用户设定的帧格式和序列信息,对回波数据进行封装,获得封装后的回波数据。具体封装方法将在本申请实施例二中进行详细说明,在此不做赘述。
其中,待封装的回波数据为数字信号,封装后的回波数据为帧序列数据。
在一个示例中,在回波数据封装装置获得封装后的回波数据之后,还可以将封装后的回波数据发送到后端处理平台进行处理。具体地,回波数据封装装置可以接收发送指令,该发送指令包括用户设定的发送速度,再将封装后的回波数据,按照该发送速度发送到后端处理平台进行处理。具体处理方法本实施例中不做限定。
在实际应用中,用户可根据回波数据的类型在软件界面设定不同的发送速度。举例来说,针对心脏的回波数据,由于心脏是时刻跳动的,因此为了能够更好地呈现出心脏的细节,需要较高的图像刷新频率,因此可以设定较慢的发送速度。但是,针对肝脏的回波数据,由于肝脏是静止不动的,因此仅需较低的图像刷新频率即可呈现出肝脏细节,因此可以设定较快的发送速度,从而提高处理效率。
在又一个示例中,在回波数据封装装置根据用户设定的发送速度,将封装后的回波数据发送到后端处理平台进行处理之后,还将处理后的数据导出为文件。具体地,回波数据封装装置可以接收导出指令,该导出指令包括用户设定的文件格式,并根据该导出指令,将经过后端处理平台处理后的数据导出为设定格式的文件,以便根据该文件做进一步的处理。
本实施例提供的回波数据封装方法,接收包括用户设定的帧格式和序列信息的封装指令,获取待封装的回波数据,并根据用户设定的帧格式和序列信息,对回波数据进行封装,获得封装后的回波数据。也就是说,在本申请实施例中,以软件替代真实的超声探头,并根据用户自行定义的封装格式对回波数据进行封装,由于用户可以根据需求对封装格式进行多样化定义,因此采用该方法对回波数据进行封装,可以获得格式多样化的封装后的回波数据。
实施例二
图3为本申请实施例提供的回波数据封装方法的流程图,如图3所示,在上述实施例一的基础上,步骤102中,所述根据所述用户设定的帧格式和序列信息,对所述回波数据进行封装,获得封装后的回波数据,具体包括以下步骤:
步骤201、根据所述用户设定的帧格式和序列信息,对所述回波数据进行拆分获得目标数据帧。
步骤202、为每个所述目标数据帧添加帧头,以获得封装后的回波数据;其中,所述帧头包括所述用户设定的帧格式。
在本实施例中,为了获得封装后的回波数据,回波数据封装装置可以根据用户设定的帧格式和序列信息,对回波数据进行拆分获得目标数据帧。
在实际应用中,回波数据封装装置首先可以根据用户设定的帧格式和序列信息生成相应的超声参数,接下来,回波数据封装装置可以对该超声参数进行解析,获得解析结果,解析结果可以包括成像模式和与成像模式相对应的帧序列,其中,成像模式可以为单个图像的成像模式,其包括但不限于单B图像模式、PW图像模式、CW图像模式、M图像模式、3D图像模式、4D图像模式以及超声造影图像模式等,成像模式还可以为多个图像模式,其包括但不限于SWE图像模式、双B图像模式、B+PW图像模式、B+CW图像模式以及B+C图像模式等。举例来说,若成像模式为B图像模式,则与其相对应的帧序列为B图像的帧序列,若成像模式为B+C图像模式,则与其相对应的帧序列可以包括两个子序列,分别为B图像的帧序列和C图像的帧序列。
然后,回波数据封装装置可以根据解析结果中的帧序列,对回波数据进行拆分,获得目标数据帧。
最后,回波数据封装装置可以为目标数据帧中的每个目标数据帧添加帧头,以获得封装后的回波数据。其中,帧头包括用户设定的帧格式,该帧格式包括但不限于成像模式、时间戳、索引号等。
在一个示例中,在上述实施例二的基础上,若需求为获得封装后的单B图像的回波数据,则用户设定的帧格式可以包括B图像的帧格式,相应地,回波数据封装装置可以获取B图像对应的待封装的回波数据,再根据用户设定的帧格式和序列信息生成相应的超声参数,并对该超声参数进行解析,获得B图像的帧序列。接下来,回波数据封装装置可以根据B图像的帧序列,对待封装的B图像对应的回波数据进行拆分获得B图像对应的数据帧,并将B图像对应的数据帧作为目标数据帧。
进一步地,在上述示例基础上,若需求为获得单角度的单B图像数据,则用户可以根据该需求设定相应的帧格式和序列信息,回波数据封装装置可以对根据该用户设定的帧格式和序列信息生成相应的超声参数进行解析,获得的解析结果可以包括一套B图像的帧序列,相应地,根据解析结果中的帧序列,对回波数据进行拆分,获得的目标数据帧的数量为一套。
若需求为获得多角度复合的单B图像数据,则用户可以根据该需求设定相应的帧格式和序列信息,回波数据封装装置可以对根据该用户设定的帧格式和序列信息生成相应的超声参数进行解析,获得的解析结果可以包括多套B图像的帧序列,其中一套帧序列对应一个角度,相应地,根据解析结果中的多套帧序列,对回波数据进行拆分,获得的目标数据帧的数量为多套。
在又一个示例中,在上述实施例二的基础上,若需求为获得封装后的B+C图像的回波数据,则用户设定的帧格式可以包括B图像的帧格式和C图像的帧格式,相应地,回波数据封装装置可以获取待封装的B图像对应的回波数据和相应的C图像对应的回波数据,再根据用户设定的帧格式和序列信息生成相应的超声参数,并对该超声参数进行解析,获得B图像的帧序列和C图像的帧序列。接下来,回波数据封装装置可以根据B图像的帧序列和C图像的帧序列,对待封装的B图像对应的回波数据和相应C图像对应的回波数据进行拆分,获得B图像对应的数据帧和C图像对应的数据帧,并将其作为目标数据帧。
相应地,回波数据封装装置可以按照第一策略,为每个目标数据帧添加帧头,以获得封装后的回波数据。其中,第一策略包括:为B图像对应的每个数据帧添加第一帧头,第一帧头包括B图像的帧格式,以及为C图像对应的每个数据帧添加第二帧头,第二帧头包括C图像的帧格式。
其中,B图像的帧格式和C图像的帧格式包括但不限于成像模式、时间戳、索引号等。
本实施例提供的回波数据封装方法,针对不同的待封装回波数据,根据用户设定的帧格式和序列信息对回波数据进行封装,实现封装格式的多样化。
实施例三
图4为本申请实施例提供的回波数据封装装置的结构示意图,如图4所示,本实施例提供的回波数据封装装置包括:接收模块41以及处理模块42。其中,接收模块41,用于接收封装指令,所述封装指令包括待封装的回波数据的标识、用户设定的帧格式和序列信息;其中,所述帧格式包括成像模式,所述序列信息包括帧序列。处理模块42,用于根据所述待封装的回波数据的标识,获取待封装的回波数据,并根据所述用户设定的帧格式和序列信息,对所述回波数据进行封装,获得封装后的回波数据。
本实施例提供的回波数据封装装置,接收包括用户设定的帧格式和序列信息的封装指令,获取待封装的回波数据,并根据用户设定的帧格式和序列信息,对回波数据进行封装,获得封装后的回波数据。也就是说,在本申请实施例中,以软件替代真实的超声探头,并根据用户自行定义的封装格式对回波数据进行封装,由于用户可以根据需求对封装格式进行多样化定义,因此采用该方法对回波数据进行封装,可以获得格式多样化的封装后的回波数据。
可选实施方式中,所述处理模块42,还用于根据所述用户设定的帧格式和序列信息,对所述回波数据进行拆分获得目标数据帧;为每个所述目标数据帧添加帧头,以获得封装后的回波数据;其中,所述帧头包括所述用户设定的帧格式。
可选实施方式中,所述用户设定的帧格式包括B图像的帧格式,所述待封装的回波数据包括B图像对应的回波数据。所述处理模块42,还用于根据所述单个图像的帧格式和序列信息,对所述单个图像对应的回波数据进行拆分获得单个图像对应的数据帧,将所述单个图像对应的数据帧作为所述目标数据帧。
可选实施方式中,所述用户设定的帧格式包括多个图像的帧格式,所述待封装的回波数据包括多个图像对应的回波数据。所述处理模块42,还用于根据所述多个图像的帧格式以及序列信息,分别对所述多个图像对应的回波数据进行拆分,获得各图像对应的数据帧,并将其作为所述目标数据帧。按照第一策略,为每个所述目标数据帧添加帧头,以获得封装后的回波数据;其中,所述第一策略包括:针对每个图像对应的数据帧,为该图像对应的每个数据帧添加帧头,所述帧头包括该图像的帧格式。
可选实施方式中,所述接收模块41,还用于接收发送指令,所述发送指令包括用户设定的发送速度。所述回波数据封装装置,还包括:发送模块43,用于将所述封装后的回波数据,按照所述用户设定的发送速度发送到后端处理平台进行处理。
可选实施方式中,所述接收模块41,还用于接收导出指令;所述导出指令包括用户设定的文件格式。所述回波数据封装装置,还包括:导出模块44,用于根据所述导出指令,将经过所述后端处理平台处理后的数据导出为设定格式的文件。
需要说明的是,本实施例提供的回波数据封装装置执行的技术方案和效果可以参见前述方法实施例的相关内容,在此不再赘述。
实施例四
图5为本申请的电子设备的结构示意图,如图5所示,本申请还提供了一种电子设备500,包括:存储器501和处理器502。
存储器501,用于存放程序。具体地,程序可以包括程序代码,所述程序代码包括计算机执行指令。存储器501可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
处理器502,用于执行存储器501存放的程序。
其中,计算机程序存储在存储器501中,并被配置为由处理器502执行以实现本申请任意一个实施例提供的回波数据封装方法。相关说明可以对应参见附图中的步骤所对应的相关描述和效果进行理解,此处不做过多赘述。
其中,本实施例中,存储器501和处理器502通过总线连接。所述总线可以是工业标准体系结构(Industry Standard Architecture,简称为ISA)总线、外部设备互连(Peripheral Component,简称为PCI)总线或扩展工业标准体系结构(Extended IndustryStandard Architecture,简称为EISA)总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图5中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
实施例五
本申请实施例还提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行以实现本申请任意一个实施例提供的回波数据封装方法。
实施例六
本申请实施例还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现本申请任意一个实施例提供回波数据封装方法。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用硬件加软件功能模块的形式实现。
用于实施本申请的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程回波数据封装装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本申请的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行***、装置或设备使用或与指令执行***、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体***、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括根据一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
此外,虽然采用特定次序描绘了各操作,但是这应当理解为要求这样操作以所示出的特定次序或以顺序次序执行,或者要求所有图示的操作应被执行以取得期望的结果。在一定环境下,多任务和并行处理可能是有利的。同样地,虽然在上面论述中包含了若干具体实现细节,但是这些不应当被解释为对本申请的范围的限制。在单独的实施例的上下文中描述的某些特征还可以组合地实现在单个实现中。相反地,在单个实现的上下文中描述的各种特征也可以单独地或以任何合适的子组合的方式实现在多个实现中。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由下面的权利要求书指出。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求书来限制。