基因测序数据压缩方法、装置、终端设备和存储介质转让专利

申请号 : CN202211003550.X

文献号 : CN115083530B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 陈墩金王阳开毕星浩林凯翔张力孙齐胜

申请人 : 广州明领基因科技有限公司

摘要 :

本申请公开了一种基因测序数据压缩方法、装置、终端设备和存储介质,通过获取待压缩的基因测序数据文本;将待压缩的基因测序数据文本进行分割,得到序列标识符数据、碱基基因序列数据和质量数序列数据;根据质量数序列数据,对待压缩的基因测序数据文本进行处理,得到读长;根据预先设置的参考序列,对碱基基因序列数进行匹配处理,得到序列匹配记录数据和序列剩余序列数据;根据预先建立的交叉预测模型,对待压缩的基因测序数据文本进行预测处理,得到预测结果,并根据预测结果,对待压缩的基因测序数据文本进行算数压缩,对基因测序数据文本进行压缩,通过高比例的压缩减少存储与传输开销。

权利要求 :

1.一种基因测序数据压缩方法,其特征在于,所述方法包括:

获取待压缩的基因测序数据文本;

将所述待压缩的基因测序数据文本进行分割,得到序列标识符数据、碱基基因序列数据和质量数序列数据;

根据所述质量数序列数据,对所述待压缩的基因测序数据文本进行处理,得到所述待压缩的基因测序数据文本的读长;

根据预先设置的参考序列,对碱基序列进行匹配处理,得到序列匹配记录数据和序列剩余序列数据;

根据预先建立的交叉预测模型,对所述序列标识符数据、所述序列匹配记录数据、所述序列剩余序列数据和所述质量数序列数据进行预测处理,得到预测结果,并根据所述预测结果,对所述待压缩的基因测序数据文本进行算数压缩,其中,所述预先建立的交叉预测模型,是对测序序列标识符构成文件、碱基序列在参考序列中的匹配记录、碱基序列的剩余序列、质量数序列数据这4个文件分别建立各自独立的预测模型,并采用自适应算数编码方法,对各个预测模型进行编码得到的;

所述预先建立的交叉预测模式至少包括序列标识符预测模型、碱基序列匹配预测模块、剩余序列预测模块和质量数序列预测模块,且通过状态机将所述序列标识符预测模型、所述碱基序列匹配预测模块、所述剩余序列预测模块和所述质量数序列预测模块连接起来,所述序列标识符预测模型、所述碱基序列匹配预测模块、所述剩余序列预测模块和所述质量数序列预测模块的输出与多路选择器相连,所述多路选择器的输出与算数编码器相连。

2.根据权利要求1所述的基因测序数据压缩方法,其特征在于,

所述序列标识符预测模型根据序列标识符的上文预测序列标识符的下文;

所述碱基序列匹配预测模块根据碱基序列匹配记录的上文预测碱基序列匹配记录的下文;

所述剩余序列预测模块根据碱基序列匹配记录和剩余序列的上文预测剩余序列的下文;

所述质量数序列预测模块根据匹配记录、剩余序列和质量数序列的上文预测质量数序列的下文。

3.根据权利要求1所述的基因测序数据压缩方法,其特征在于,所述根据所述质量数序列数据,对所述待压缩的基因测序数据文本进行处理,得到与所述待压缩的基因测序数据文本的读长,包括:采用字典法,对所述待压缩的基因测序数据文件进行压缩,得到与所述待压缩的基因测序数据文本的读长。

4.一种基因测序数据压缩装置,其特征在于,所述装置包括:

获取模块,用于获取待压缩的基因测序数据文本;

确定模块,用于将所述待压缩的基因测序数据文本进行分割,得到序列标识符数据、碱基基因序列数据和质量数序列数据;

处理模块,用于根据所述质量数序列数据,对所述待压缩的基因测序数据文本进行处理,得到所述待压缩的基因测序数据文本的读长;

匹配模块,用于根据预先设置的参考序列,对碱基序列进行匹配处理,得到序列匹配记录数据和序列剩余序列数据;

预测模块,用于根据预先建立的交叉预测模型,对所述序列标识符数据、所述序列匹配记录数据、所述序列剩余序列数据和所述质量数序列数据进行预测处理,得到预测结果,并根据所述预测结果,对所述待压缩的基因测序数据文本进行算数压缩,其中,所述预先建立的交叉预测模型,是对测序序列标识符构成文件、碱基序列在参考序列中的匹配记录、碱基序列的剩余序列、质量数序列数据这4个文件分别建立各自独立的预测模型,并采用自适应算数编码方法,对各个预测模型进行编码得到的;

所述预先建立的交叉预测模式至少包括序列标识符预测模型、碱基序列匹配预测模块、剩余序列预测模块和质量数序列预测模块,且通过状态机将所述序列标识符预测模型、所述碱基序列匹配预测模块、所述剩余序列预测模块和所述质量数序列预测模块连接起来,所述序列标识符预测模型、所述碱基序列匹配预测模块、所述剩余序列预测模块和所述质量数序列预测模块的输出与多路选择器相连,所述多路选择器的输出与算数编码器相连。

5.根据权利要求4所述的装置,其特征在于,

所述序列标识符预测模型根据序列标识符的上文预测序列标识符的下文;

所述碱基序列匹配预测模块根据碱基序列匹配记录的上文预测碱基序列匹配记录的下文;

所述剩余序列预测模块根据碱基序列匹配记录和剩余序列的上文预测剩余序列的下文;

所述质量数序列预测模块根据匹配记录、剩余序列和质量数序列的上文预测质量数序列的下文。

6.根据权利要求4所述的装置,其特征在于,所述处理模块用于:

采用字典法,对所述待压缩的基因测序数据文件进行压缩,得到与所述待压缩的基因测序数据文本的读长。

7.一种终端设备,其特征在于,包括:至少一个处理器和存储器;

所述存储器存储计算机程序;所述至少一个处理器执行所述存储器存储的计算机程序,以实现权利要求1‑3中任一项所述的基因测序数据压缩方法。

8.一种计算机可读存储介质,其特征在于,该计算机可读存储介质中存储有计算机程序,所述计算机程序被执行时实现权利要求1‑3中任一项所述的基因测序数据压缩方法。

说明书 :

基因测序数据压缩方法、装置、终端设备和存储介质

技术领域

[0001] 本申请属于基因检测技术领域,尤其涉及一种基因测序数据压缩方法、装置、终端设备和存储介质。

背景技术

[0002] 新一代测序技术加速了基因组学的研究,新一代测序技术能以极低的成本产生大量的基因序列数据,由于测序成本在进一步降低,基因序列数据正在爆炸式增长,这种爆炸式增长给存储带来了巨大压力。对基因序列数据进行压缩是解决该问题的一个极其有效的方法。
[0003] 标准的基因测序数据文本存储格式称为FASTQ格式。在FASTQ格式中,每一测序序列用4行表示:第一行是测序序列标识符;第二行是测序序列的碱基序列;第三行备用,用于存储额外信息,通常为空,这里忽略改行;第四行是碱基的质量数,量数与第二行中的碱基一一对应,表示该碱基的置信度。测序序列中碱基序列的长度简称读长,记为BP。
[0004] 由于典型物种的全基因组参考碱基序列是已知的,压缩存储基因测序数据时,首先会进行匹配过程。匹配过程即对碱基序列中的每一子序列检测参考序列中是否存在某个子序列与之相同或这不同碱基数目小于预设限制,若存在,则记录这两子序列的各自位置,共同长度以及少量差异,称为一处匹配。保存碱基序列时,可以储存适当的匹配以代替相应子序列,从而大幅减少需要储存的碱基数目,未能由匹配所描述的部分碱基序列称为碱基序列的剩余序列。
[0005] 理论上,自适应算数编码是压缩能力最高的编码方法之一。应用自适应算数编码,需对数据设计一个模型,该模型依据数据的上文给出数据中接下来的一个比特位取0或1的概率,据此概率进行算数编码。模型预测越准确,则压缩性能越好。但是,由于上下文预测模型的计算开销较大,目前尚无将自适应算数编码应用于基因测序数据压缩的成熟方法。

发明内容

[0006] 本发明意在提供一种基因测序数据压缩方法、装置、终端设备和存储介质,以解决现有技术中存在的不足,本发明要解决的技术问题通过以下技术方案来实现。
[0007] 第一个方面,本发明实施例提供一种基因测序数据压缩方法,所述方法包括:
[0008] 获取待压缩的基因测序数据文本;
[0009] 将所述待压缩的基因测序数据文本进行分割,得到序列标识符数据、碱基基因序列数据和质量数序列数据;
[0010] 根据所述质量数序列数据,对所述待压缩的基因测序数据文本进行处理,得到与所述待压缩的基因测序数据文本的读长;
[0011] 根据预先设置的参考序列,对碱基序列进行匹配处理,得到序列匹配记录数据和序列剩余序列数据;
[0012] 根据预先建立的交叉预测模型,对所述序列标识符数据、所述序列匹配记录数据、所述序列剩余序列数据和所述质量数序列数据进行预测处理,得到预测结果,并根据所述预测结果,对所述待压缩的基因测序数据文本进行算数压缩。
[0013] 可选地,所述预先建立的交叉预测模式至少包括序列标识符预测模型、碱基序列匹配预测模块、剩余序列预测模块和质量数序列预测模块,且通过状态机将所述序列标识符预测模型、所述碱基序列匹配预测模块、所述剩余序列预测模块和所述质量数序列预测模块连接起来,所述序列标识符预测模型、所述碱基序列匹配预测模块、所述剩余序列预测模块和所述质量数序列预测模块的输出与多路选择器相连,所述多路选择器的输出与算数编码器相连。
[0014] 可选地所述序列标识符预测模型根据序列标识符的上文预测序列标识符的下文;
[0015] 所述碱基序列匹配预测模块根据碱基序列匹配记录的上文预测碱基序列匹配记录的下文;
[0016] 所述剩余序列预测模块根据碱基序列匹配记录和剩余序列的上文预测剩余序列的下文;
[0017] 所述质量数序列预测模块根据匹配记录、剩余序列和质量数序列的上文预测质量数序列的下文。
[0018] 可选地,所述根据所述质量数序列数据,对所述待压缩的基因测序数据文本进行处理,得到与所述待压缩的基因测序数据文本的读长,包括:
[0019] 采用字典法,对所述待压缩的基因测序数据文件进行压缩,得到与所述待压缩的基因测序数据文本的读长。
[0020] 第二个方面,本发明实施例提供一种基因测序数据压缩装置,所述装置包括:
[0021] 获取模块,用于获取待压缩的基因测序数据文本;
[0022] 确定模块,用于将所述待压缩的基因测序数据文本进行分割,得到序列标识符数据、碱基基因序列数据和质量数序列数据;
[0023] 处理模块,用于根据所述质量数序列数据,对所述待压缩的基因测序数据文本进行处理,得到与所述待压缩的基因测序数据文本的读长;
[0024] 匹配模块,用于根据预先设置的参考序列,对碱基序列进行匹配处理,得到序列匹配记录数据和序列剩余序列数据;
[0025] 预测模块,用于根据预先建立的交叉预测模型,对所述序列标识符数据、所述序列匹配记录数据、所述序列剩余序列数据和所述质量数序列数据进行预测处理,得到预测结果,并根据所述预测结果,对所述待压缩的基因测序数据文本进行算数压缩。
[0026] 可选地,所述预先建立的交叉预测模式至少包括序列标识符预测模型、碱基序列匹配预测模块、剩余序列预测模块和质量数序列预测模块,且通过状态机将所述序列标识符预测模型、所述碱基序列匹配预测模块、所述剩余序列预测模块和所述质量数序列预测模块连接起来,所述序列标识符预测模型、所述碱基序列匹配预测模块、所述剩余序列预测模块和所述质量数序列预测模块的输出与多路选择器相连,所述多路选择器的输出与算数编码器相连。
[0027] 可选地,所述序列标识符预测模型根据序列标识符的上文预测序列标识符的下文;
[0028] 所述碱基序列匹配预测模块根据碱基序列匹配记录的上文预测碱基序列匹配记录的下文;
[0029] 所述剩余序列预测模块根据碱基序列匹配记录和剩余序列的上文预测剩余序列的下文;
[0030] 所述质量数序列预测模块根据匹配记录、剩余序列和质量数序列的上文预测质量数序列的下文。
[0031] 可选地,所述处理模块用于:
[0032] 采用字典法,对所述待压缩的基因测序数据文件进行压缩,得到与所述待压缩的基因测序数据文本的读长。
[0033] 第三个方面,本发明实施例提供一种终端设备,包括:至少一个处理器和存储器;
[0034] 所述存储器存储计算机程序;所述至少一个处理器执行所述存储器存储的计算机程序,以实现第一个方面提供的基因测序数据压缩方法。
[0035] 第四个方面,本发明实施例提供一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,所述计算机程序被执行时实现第一个方面提供的基因测序数据压缩方法。
[0036] 本发明实施例包括以下优点:
[0037] 本发明实施例提供的基因测序数据压缩方法、装置、终端设备和存储介质,通过获取待压缩的基因测序数据文本;将待压缩的基因测序数据文本进行分割,得到序列标识符数据、碱基基因序列数据和质量数序列数据;根据质量数序列数据,对待压缩的基因测序数据文本进行处理,得到与待压缩的基因测序数据文本的读长;根据预先设置的参考序列,对碱基基因序列数进行匹配处理,得到序列匹配记录数据和序列剩余序列数据;根据预先建立的交叉预测模型,对序列标识符数据、序列匹配记录数据、序列剩余序列数据和质量数序列数据进行预测处理,得到预测结果,并根据预测结果,对待压缩的基因测序数据文本进行算数压缩,通过本发明实施例的基因测序数据压缩方法,建立交叉预测模型,该交叉预测模型对基因序列的上下文进行关联,对基因测序数据文本进行压缩,通过高比例的压缩减少存储与传输开销。

附图说明

[0038] 为了更清楚地说明本申请实施例或现有的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0039] 图1为本申请一实施例中一种基因测序数据压缩方法的流程示意图;
[0040] 图2为本申请一实施例中又一种基因测序数据压缩方法的流程示意图;
[0041] 图3为本申请一实施例中交叉预测模型的示意图;
[0042] 图4为本申请一实施例中匹配记录的示意图;
[0043] 图5为本申请一实施例中碱基序列对质量数序列进行预测的示意图;
[0044] 图6为本申请一实施例中状态机将独立预测模型连接为复合模型的示意图;
[0045] 图7为本申请一实施例中基因测序数据压缩装置的模块示意图;
[0046] 图8是本发明的一种基因测序数据压缩装置实施例的结构框图;
[0047] 图9是本发明的一种终端设备的结构示意图。

具体实施方式

[0048] 为使本申请的目的、技术方案和优点更加清楚,下面将结合具体实施例及相应的附图对本申请的技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0049] 本发明一实施例提供一种基因测序数据压缩方法,用于对基因序列进行压缩。本实施例的执行主体为基因测序数据压缩装置,设置在终端设备上,例如,终端设备至少包括计算机终端等。
[0050] 参照图1,示出了本发明的一种基因测序数据压缩方法实施例的步骤流程图,该方法具体可以包括如下步骤:
[0051] S101、获取待压缩的基因测序数据文本;
[0052] 具体地,终端设备获取待压缩的基因测序数据文本,其中,基因测序数据文本为FASTQ格式,要想对基因测序数据文本进行压缩,需要将重复的碱基序列进行重复序列的匹配。
[0053] S102、将待压缩的基因测序数据文本进行分割,得到序列标识符数据、碱基基因序列数据和质量数序列数据;
[0054] 终端设备对待压缩的基因测序数据文本进行处理,即将FASTQ格式数据的不同组分分解为4个文件,获取序列标识符数据、碱基基因序列数和质量数序列数据;并将不同类型的数据生成不同的文件,包括:
[0055] 1、测序序列标识符构成文件FXH;
[0056] 2、碱基序列在参考序列中的匹配记录FXA;
[0057] 3、碱基序列的剩余序列FXB;
[0058] 4、质量数序列数据FXQ。
[0059] S103、根据质量数序列数据,对待压缩的基因测序数据文本进行处理,得到与待压缩的基因测序数据文本的读长;
[0060] 具体地,终端设备采用字典法压缩序列读长,构成输出文件的待压缩的基因测序数据文本的读长。
[0061] S104、根据预先设置的参考序列,对碱基序列进行匹配处理,得到序列匹配记录数据和序列剩余序列数据;
[0062] 具体地,由于典型物种的全基因组参考碱基序列是已知的,压缩存储基因测序数据时,首先会进行匹配过程,匹配过程即对碱基序列中的每一子序列检测参考序列中是否存在某个子序列与之相同或这不同碱基数目小于预设限制,若存在,则记录这两子序列的各自位置,共同长度以及少量差异,称为一处匹配。保存碱基序列时,可以储存适当的匹配以代替相应子序列,从而大幅减少需要储存的碱基数目,未能由匹配所描述的部分碱基序列称为碱基序列的剩余序列,这样,分别可以得到序列匹配记录数据和序列剩余序列数据。
[0063] S105、根据预先建立的交叉预测模型,对序列标识符数据、序列匹配记录数据、序列剩余序列数据和质量数序列数据进行预测处理,得到预测结果,并根据预测结果,对待压缩的基因测序数据文本进行算数压缩。
[0064] 具体地,本发明实施例中的预先建立的交叉预测模型,是对测序序列标识符构成文件FXH、碱基序列在参考序列中的匹配记录FXA、碱基序列的剩余序列FXB、质量数序列数据FXQ这4个文件分别建立各自独立的预测模型,并采用自适应算数编码方法,对各个预测模型进行编码,得到该交叉预测模型,且各个预测模型是根据上下文内容得到的。
[0065] 其中,该预测结果中至少包括预测概率,终端设备根据预测概率对待压缩的基因测序数据文本进行算数压缩。
[0066] 本申请实施例将待压缩的基因测序数据文本分割为序列标识符数据,碱基序列数据和质量数序列数据三个组分。
[0067] 首先用常规方法单独压缩读长。根据预先设置的参考序列,对碱基序列进行匹配处理,由碱基序列组分得到序列匹配记录数据和序列剩余序列数据两个组分;根据预先建立的交叉预测模型,依据前文,读长,以及其它组分,对序列标识符数据,序列匹配记录,剩余序列数据,质量数序列数据四个组分的后文,并根据预测概率,对待压缩的基因测序数据文本进行算数压缩,通过高比例的压缩减少存储与传输开销。
[0068] 终端设备根据预先建立的交叉预测模型中,可以预测出剩余碱基序列,并利用碱基信息预测质量数信息,终端设备根据预测概率,对待压缩的基因测序数据文本进行算数压缩,相比于未分解的FASTQ文件,每一个子文件内部的统计性质较为均匀,规律较为简单,使得每一个文件的统计模型无需太过复杂即可取得较好的预测结果。
[0069] 将待压缩的基因测序数据文本分割为序列标识符数据,碱基序列数据和质量数序列数据三个组分,首先单独压缩读长,根据预先设置的参考序列,对碱基基因序列进行匹配处理,对碱基序列组分进行匹配后,得到匹配序列记录数据和剩余序列数据两个组分;根据预先建立的交叉预测模型、读长和各组分各自的前文,对序列标识符数据,序列匹配记录数据,剩余序列数据和质量数序列数据四个组分的后文进行预测,得到预测结果,并根据预测结果,对待压缩的基因测序数据文本进行算数压缩,通过高比例的压缩减少存储与传输开销。
[0070] 本发明实施例提供的基因测序数据压缩方法,通过获取待压缩的基因测序数据文本;将待压缩的基因测序数据文本进行分割,得到序列标识符数据、碱基基因序列数据和质量数序列数据;根据质量数序列数据,对待压缩的基因测序数据文本进行处理,得到与待压缩的基因测序数据文本的读长;根据预先设置的参考序列,对碱基基因序列数进行匹配处理,得到序列匹配记录数据和序列剩余序列数据;根据预先建立的交叉预测模型,对所述序列标识符数据、所述序列匹配记录数据、所述序列剩余序列数据和所述质量数序列数据进行预测处理,得到预测结果,并根据预测结果,对待压缩的基因测序数据文本进行算数压缩,通过本发明实施例的基因测序数据压缩方法,建立交叉预测模型,该交叉预测模型对基因序列的上下文进行关联,对基因测序数据文本进行压缩,通过高比例的压缩减少存储与传输开销。
[0071] 本发明又一实施例对上述实施例提供的基因测序数据压缩方法做进一步补充说明。
[0072] 可选地,预先建立的交叉预测模式至少包括序列标识符预测模型、碱基序列匹配预测模块、剩余序列预测模块和质量数序列预测模块,且通过状态机将序列标识符预测模型、碱基序列匹配预测模块、剩余序列预测模块和质量数序列预测模块连接起来,序列标识符预测模型、碱基序列匹配预测模块、剩余序列预测模块和质量数序列预测模块的输出与多路选择器相连,多路选择器的输出与算数编码器相连。
[0073] 本发明实施例采用交叉预测模型,利用匹配信息预测剩余碱基序列;利用碱基信息预测质量数信息;采用有限状态机,将多个独立的预测模型连接为一个复合模型,得到该交叉预测模型。
[0074] 可选地序列标识符预测模型根据序列标识符的上文预测序列标识符的下文;
[0075] 碱基序列匹配预测模块根据碱基序列匹配记录的上文预测碱基序列匹配记录的下文;
[0076] 剩余序列预测模块根据剩余序列的上下文和碱基序列匹配记录确定的;
[0077] 质量数序列预测模块是根据质量数序列数据的上下文、碱基序列匹配记录和剩余序列确定的。
[0078] 具体的,预测模型是通过“上文”预测“下文”。上文当前已读取的文本,下文是接下来要读取的文本。
[0079] FXH文件的预测模型仅依赖自身上文。
[0080] FXA文件的预测模型仅依赖自身上文。
[0081] FXB文件的预测模型依赖自身上文外,还依赖于匹配记录FXA。超过设计限制的比对错位会终止匹配,但是匹配的延伸部分大概率保持较高的相似性。故引入匹配记录在参考序列上的延伸,有助于预测剩余序列。
[0082] FXQ文件的预测模型依赖自身上文外,还依赖于测序碱基序列FXA和FXB。通常有如下推断:含混碱基的质量数必低,较多连续的相同碱基对应的质量数稍低。故引入取碱基序列,有助预测质量数序列。
[0083] 具体地,独立预测模型就是FXH标识符,FXA匹配记录,FXB剩余碱基,FXQ质量数四个组分独立预测压缩。
[0084] 交叉预测模型是:利用FXA来预测FXB, 同时利用FXA与FXB来预测FXQ。
[0085] 可选地,根据质量数序列数据,对待压缩的基因测序数据文本进行处理,得到与待压缩的基因测序数据文本的读长,包括:
[0086] 采用字典法,对待压缩的基因测序数据文件进行压缩,得到与待压缩的基因测序数据文本的读长。
[0087] 图2为本申请一实施例中又一种基因测序数据压缩方法的流程示意图,该基因测序数据压缩方法包括:
[0088] 步骤1、遍历所有的待压缩的基因测序数据文本文件,并对该基因测序数据文本文件进行格式检测,若文本文件的的格式符合标准FASTQ格式,记录一些统计信息,即确定序列标识、碱基序列和质量数序列。
[0089] 步骤2、采用字典法压缩序列读长,构成输出文件的读长。
[0090] 步骤3、根据预先设置的参考序列对FASTQ格式的碱基序列进行匹配,得到匹配记录和剩余序列。
[0091] 步骤4、将FASTQ的信息分解为4个组分文件,并对各个不同的组分文件建立独立的预测模型,包括FXH模型、FXA模型、FXB模型和FXQ模型:
[0092] 1、FXH:测序序列标识符
[0093] 2、FXA:碱基序列匹配记录
[0094] 3、FXB:碱基序列剩余序列
[0095] 4、FXQ:质量数序列
[0096] 对上述4个文件,独立建立交叉的上下文预测模型。交叉一词指,对序数靠后的文件建立预测模型时,除了自身文件的上文外,可以引用序数在前的文件内容。因为这四个文件的压缩解压是有顺序的,所以可以这样交叉引用。
[0097] 步骤5、将上述4个独立的预测模型连接为一个复合模型进行算数编码,得到交叉预测模型,然后根据读长和基于状态机的多路选择器输出压缩文件。
[0098] 图3为本申请一实施例中交叉预测模型的示意图;交叉预测模型具体包括:
[0099] FXH文件的预测模型仅依赖自身上文。
[0100] FXA文件的预测模型仅依赖自身上文。
[0101] FXB文件的预测模型依赖自身上文外,还依赖于匹配记录FXA。考虑如下情形:超过设计限制的比对错位会终止匹配,但是匹配的延伸部分大概率保持较高的相似性。故引入匹配记录在参考序列上的延伸,有助于预测剩余序列。
[0102] FXQ文件的预测模型依赖自身上文外,还依赖于测序碱基序列FXA和FXB。通常有如下推断:含混碱基的质量数必低,较多连续的相同碱基对应的质量数稍低。故引入取碱基序列,有助预测质量数序列。
[0103] 图4为本申请一实施例中匹配记录的示意图。
[0104] 图5为本申请一实施例中碱基序列对质量数序列进行预测的示意图,包括连续重复碱基降低质量数,含混碱基意味着较低的质量数。
[0105] 图6为本申请一实施例中状态机将独立预测模型连接为复合模型的示意图;包括基于状态机的多路选择器,引入一个带有4个状态的状态机,对应于状态机的每个状态,分别接入上述4个预测模型。这样,将上述4个预测模型连接为一个复合模型。采用4个独立模型分别进行编码,需要4个算数编码器和4个输出缓存。而采用一个复合模型,仅需要一个算数编码器和一个输出缓存,减少了代码复杂度和运算资源的消耗。
[0106] S0:接通FXH,遇分隔符号跳转S1;
[0107] S1: 接通FXA,固定字符数目通过后转S2;
[0108] S2: 接通FXB,读长减去匹配长度后得到剩余长度,此数目字符通过后转S3;
[0109] S3: 接通FXQ,读长数目已知,此数目字符通过后转S0。
[0110] 图7为本申请一实施例中基因测序数据压缩装置的模块示意图;本发明实施例是一个具有可视化界面的多线程基因数据压缩程序,包括参数采集、文件分割为块文件、多线程管理模块,该多线程管理模块包括压缩/解压主体模块。
[0111] 硬件:个人计算机
[0112] 软件:CYGWIN_NT‑10.0/ mingw64‑x86_64‑gcc‑g++(11.2.0‑1)
[0113] 测试环境:
[0114] 硬件:Intel® Xeon® CPU E5‑2678 v3 @ 2.50GHz
[0115] 软件:CentOS Linux release 7.6.1810 /g++(Red Hat 4.8.5‑44)
[0116] 本发明实施例提供可视化界面为采集或自动填充5个参数:模式选择,即压缩还是解压,参考序列文件,线程数目,二进制文件名,文本文件名。压缩时,文本文件是输入,二进制文件是输出;解压时反之。压缩较大的文件时,每128M文本内容切分为一个分块子文件进行多线程压缩。
[0117] 需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
[0118] 本发明实施例提供的基因测序数据压缩方法,通过获取待压缩的基因测序数据文本;将待压缩的基因测序数据文本进行分割,得到序列标识符数据、碱基基因序列数据和质量数序列数据;根据质量数序列数据,对待压缩的基因测序数据文本进行处理,得到与待压缩的基因测序数据文本的读长;根据预先设置的参考序列,对碱基基因序列数进行匹配处理,得到序列匹配记录数据和序列剩余序列数据;根据预先建立的交叉预测模型,对所述序列标识符数据、所述序列匹配记录数据、所述序列剩余序列数据和所述质量数序列数据进行预测处理,得到预测结果,并根据预测结果,对待压缩的基因测序数据文本进行算数压缩,通过本发明实施例的基因测序数据压缩方法,建立交叉预测模型,该交叉预测模型对基因序列的上下文进行关联,对基因测序数据文本进行压缩,通过高比例的压缩减少存储与传输开销。
[0119] 本发明另一实施例提供一种基因测序数据压缩装置,用于执行上述实施例提供的基因测序数据压缩方法。
[0120] 参照图8,示出了本发明的一种基因测序数据压缩装置实施例的结构框图,该装置具体可以包括如下模块:获取模块801、确定模块802、处理模块803、匹配模块804和预测模块805,其中:
[0121] 获取模块801用于获取待压缩的基因测序数据文本;
[0122] 确定模块802用于将待压缩的基因测序数据文本进行分割,得到序列标识符数据、碱基基因序列数据和质量数序列数据;
[0123] 处理模块803用于根据质量数序列数据,对待压缩的基因测序数据文本进行处理,得到与待压缩的基因测序数据文本的读长;
[0124] 匹配模块804用于根据预先设置的参考序列,对碱基基因序列数进行匹配处理,得到序列匹配记录数据和序列剩余序列数据;
[0125] 预测模块805用于根据预先建立的交叉预测模型,对所述序列标识符数据、所述序列匹配记录数据、所述序列剩余序列数据和所述质量数序列数据进行预测处理,得到预测结果,并根据预测结果,对待压缩的基因测序数据文本进行算数压缩。
[0126] 本发明实施例提供的基因测序数据压缩装置,通过获取待压缩的基因测序数据文本;将待压缩的基因测序数据文本进行分割,得到序列标识符数据、碱基基因序列数据和质量数序列数据;根据质量数序列数据,对待压缩的基因测序数据文本进行处理,得到与待压缩的基因测序数据文本的读长;根据预先设置的参考序列,对碱基基因序列数进行匹配处理,得到序列匹配记录数据和序列剩余序列数据;根据预先建立的交叉预测模型,对所述序列标识符数据、所述序列匹配记录数据、所述序列剩余序列数据和所述质量数序列数据进行预测处理,得到预测结果,并根据预测结果,对待压缩的基因测序数据文本进行算数压缩,通过本发明实施例的基因测序数据压缩方法,建立交叉预测模型,该交叉预测模型对基因序列的上下文进行关联,对基因测序数据文本进行压缩,通过高比例的压缩减少存储与传输开销。
[0127] 本发明又一实施例对上述实施例提供的基因测序数据压缩装置做进一步补充说明。
[0128] 可选地,预先建立的交叉预测模式至少包括序列标识符预测模型、碱基序列匹配预测模块、剩余序列预测模块和质量数序列预测模块,且通过状态机将序列标识符预测模型、碱基序列匹配预测模块、剩余序列预测模块和质量数序列预测模块连接起来,序列标识符预测模型、碱基序列匹配预测模块、剩余序列预测模块和质量数序列预测模块的输出与多路选择器相连,多路选择器的输出与算数编码器相连。
[0129] 可选地,序列标识符预测模型根据序列标识符的上文预测序列标识符的下文;
[0130] 碱基序列匹配预测模块根据碱基序列匹配记录的上文预测碱基序列匹配记录的下文;
[0131] 剩余序列预测模块根据剩余序列的上下文和碱基序列匹配记录确定的;
[0132] 质量数序列预测模块是根据质量数序列数据的上下文、碱基序列匹配记录和剩余序列确定的。
[0133] 可选地,处理模块用于:
[0134] 采用字典法,对待压缩的基因测序数据文件进行压缩,得到与待压缩的基因测序数据文本的读长。
[0135] 对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
[0136] 本发明实施例提供的基因测序数据压缩装置,通过获取待压缩的基因测序数据文本;将待压缩的基因测序数据文本进行分割,得到序列标识符数据、碱基基因序列数据和质量数序列数据;根据质量数序列数据,对待压缩的基因测序数据文本进行处理,得到与待压缩的基因测序数据文本的读长;根据预先设置的参考序列,对碱基基因序列数进行匹配处理,得到序列匹配记录数据和序列剩余序列数据;根据预先建立的交叉预测模型,对所述序列标识符数据、所述序列匹配记录数据、所述序列剩余序列数据和所述质量数序列数据进行预测处理,得到预测结果,并根据预测结果,对待压缩的基因测序数据文本进行算数压缩,通过本发明实施例的基因测序数据压缩方法,建立交叉预测模型,该交叉预测模型对基因序列的上下文进行关联,对基因测序数据文本进行压缩,通过高比例的压缩减少存储与传输开销。
[0137] 本发明再一实施例提供一种终端设备,用于执行上述实施例提供的基因测序数据压缩方法。
[0138] 图9是本发明的一种终端设备的结构示意图,如图9所示,该终端设备包括:至少一个处理器901和存储器902;
[0139] 存储器存储计算机程序;至少一个处理器执行存储器存储的计算机程序,以实现上述实施例提供的基因测序数据压缩方法。
[0140] 本实施例提供的终端设备,通过获取待压缩的基因测序数据文本;将待压缩的基因测序数据文本进行分割,得到序列标识符数据、碱基基因序列数据和质量数序列数据;根据质量数序列数据,对待压缩的基因测序数据文本进行处理,得到与待压缩的基因测序数据文本的读长;根据预先设置的参考序列,对碱基基因序列数进行匹配处理,得到序列匹配记录数据和序列剩余序列数据;根据预先建立的交叉预测模型,对所述序列标识符数据、所述序列匹配记录数据、所述序列剩余序列数据和所述质量数序列数据进行预测处理,得到预测结果,并根据预测结果,对待压缩的基因测序数据文本进行算数压缩,通过本发明实施例的基因测序数据压缩方法,建立交叉预测模型,该交叉预测模型对基因序列的上下文进行关联,对基因测序数据文本进行压缩,通过高比例的压缩减少存储与传输开销。
[0141] 本申请又一实施例提供一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,计算机程序被执行时实现上述任一实施例提供的基因测序数据压缩方法。
[0142] 根据本实施例的计算机可读存储介质,通过获取待压缩的基因测序数据文本;将待压缩的基因测序数据文本进行分割,得到序列标识符数据、碱基基因序列数据和质量数序列数据;根据质量数序列数据,对待压缩的基因测序数据文本进行处理,得到与待压缩的基因测序数据文本的读长;根据预先设置的参考序列,对碱基基因序列数进行匹配处理,得到序列匹配记录数据和序列剩余序列数据;根据预先建立的交叉预测模型,对所述序列标识符数据、所述序列匹配记录数据、所述序列剩余序列数据和所述质量数序列数据进行预测处理,得到预测结果,并根据预测结果,对待压缩的基因测序数据文本进行算数压缩,通过本发明实施例的基因测序数据压缩方法,建立交叉预测模型,该交叉预测模型对基因序列的上下文进行关联,对基因测序数据文本进行压缩,通过高比例的压缩减少存储与传输开销。
[0143] 应该指出,上述详细说明都是示例性的,旨在对本申请提供进一步的说明。除非另有指明,本文使用的所有技术和科学术语均具有与本申请所属技术领域的普通技术人员的通常理解所相同的含义。
[0144] 需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本申请的示例性实施方式。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式。此外,还应当理解的是,当在本说明书中使用术语“包含”和/或“包括”时,其指明存在特征、步骤、操作、器件、组件和/或它们的组合。
[0145] 需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的术语在适当情况下可以互换,以便这里描述的本申请的实施方式能够以除了在这里图示或描述的那些以外的顺序实施。
[0146] 此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含。例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
[0147] 为了便于描述,在这里可以使用空间相对术语,如“在……之上”、“在……上方”、“在……上表面”、“上面的”等,用来描述如在图中所示的一个器件或特征与其他器件或特征的空间位置关系。应当理解的是,空间相对术语旨在包含除了器件在图中所描述的方位之外的在使用或操作中的不同方位。例如,如果附图中的器件被倒置,则描述为“在其他器件或构造上方”或“在其他器件或构造之上”的器件之后将被定位为“在其他器件或构造下方”或“在其他器件或构造之下”。因而,示例性术语“在……上方”可以包括“在……上方”和“在……下方”两种方位。该器件也可以其他不同方式定位,如旋转90度或处于其他方位,并且对这里所使用的空间相对描述作出相应解释。
[0148] 在上面详细的说明中,参考了附图,附图形成本文的一部分。在附图中,类似的符号典型地确定类似的部件,除非上下文以其他方式指明。在详细的说明书、附图及权利要求书中所描述的图示说明的实施方案不意味是限制性的。在不脱离本文所呈现的主题的精神或范围下,其他实施方案可以被使用,并且可以作其他改变。
[0149] 以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。