用于DNA存储的图像编解码方法、系统、设备及可读存储介质

文档序号:37638411发布日期:2024-04-18 17:57阅读:7来源:国知局
用于DNA存储的图像编解码方法、系统、设备及可读存储介质

本发明属于生物与信息,具体涉及一种用于dna存储的图像编解码方法、系统、设备及可读存储介质。


背景技术:

1、面对数据的爆炸式增长,现有存储介质远远无法满足大数据存储的需求,而dna具有存储密度高、存储时间长、占地面积小、维护成本低的优点。dna存储有望突破大数据存储的瓶颈,是bt与it技术融合的典范。现有的dna存储数据方法通常包括下述步骤:

2、1、编码:将需要存储的数据转为二进制序列,再通过设计好的编码方式编码为碱基序列;

3、2、合成:按照设计好的碱基序列,合成dna;

4、3、存储:将合成的dna分子进行存储,一般分为体内存储和体外存储两种;

5、4、测序:取出dna,测序得到碱基序列;

6、5、解码:对碱基序列进行纠错,并按照设定的解码方式将碱基序列解码,还原为原始数据。

7、现有的一种技术提出的编码方式,可以满足部分dna序列上的约束条件,同时使用冗余方式来纠正一定数量的错误,但是没有使用其他方法来减少因为冗余而增加的dna数量,导致在存储时所需合成的dna数量过多;还有的技术使用校验码来纠正错误,从而减少了所需合成dna的数量,但是在dna序列的约束条件方面,只能保证满足均聚物小于等于三,不能保证gc含量在40%~60%之间。hedges方法和dbgps方法可以减少存储时所需合成的dna数量,并且能够在不需要副本的情况下解决部分错误,但是仍然有部分错误需要使用多条序列才能纠正。


技术实现思路

1、本发明为解决编码密度低、兼容性与还原度较差的技术问题,进而提供了一种用于dna存储的图像编解码方法、系统、设备及可存储介质。

2、本发明涉及一种图像数据dna存储的编解码方法,包括如下步骤:

3、步骤s1、将需要编码的图像转化为二进制数据串,拆分为子串后,按序为其进行二进制编号,拼接编号与二进制子串,得到组合数据串;

4、步骤s2、建立二进制串与碱基序列的映射表,将组合数据串进行碱基转换,得到碱基序列;

5、步骤s3、将所述碱基序列添加校验信息并重复,得到冗余碱基序列,添加新的引物并进行dna合成,得到dna存储数据;

6、进一步地,步骤s1中,获取所需编码的图像,从rgb空间转到yuv空间,然后对图像实施小波变换,将图像转化为二进制数据串。

7、进一步地,步骤s2中,枚举所有满足gc含量和均聚物长度要求的碱基序列,建立二进制串与碱基序列的映射表,将组合数据串切割成与二进制串长度相同的多个子串,使用所述映射表将二进制子串进行碱基转换,并对得到的碱基序列进行拼接,得到转换后的碱基序列。

8、进一步地,包括如下纠错步骤:

9、步骤s4、对碱基序列进行错误检测;如果检测到错误,开始纠错;如果没有错误,返回正确序列;

10、步骤s5、设置最大错误数量和类型;如果检测到插入或删除错误,枚举可能发生的情况并记录,使用纠错算法进行纠错,得到正确的序列并返回;

11、步骤s6、使用经过检错与纠错得到的序列,得到还原图像;对还原图像进行修复与增强,得到最终图像。

12、进一步地,步骤s4中,如果序列的长度与编码时设置的长度相等,并且切分,切分的份数与步骤s3中碱基序列添加校验信息后的重复次数相同,所有子串完全相同,认为没有发生错误,否则认为发生错误。

13、进一步地,步骤s5中,如果序列的长度小于编码时设置的长度,则认为发生了删除错误,枚举所有可能的删除位置,对每一种可能的情况,在对应位置插入可能的碱基;如果序列的长度大于编码时设置的长度,则认为发生了插入错误,枚举所有可能的插入位置,对每一种可能的情况,删除这一位置的碱基;如果长度没有发生变化,不进行修改;生成所有可能的情况,并记录,然后使用动态规划算法实现纠错,得到正确的碱基序列并返回。

14、进一步地,步骤s6中,对于经过检错与纠错得到的碱基序列,使用编码时设置的映射表,转换为二进制串,根据二进制串中的编号,对二进制串排序得到还原图像,对还原图像使用插值或深度学习等方式进行恢复与增强,得到最终图像。

15、本发明还涉及一种图像数据dna存储的编解码系统,应用上述的图像数据dna存储的编解码方法。

16、本发明还涉及一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述方法的步骤。

17、本发明还涉及一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述方法的步骤。

18、有益效果

19、本发明的用于dna存储的图像编解码方法,在编码前先压缩数据,可以提高编码密度,还可以根据实际数据与对还原数据的要求,在压缩比和还原质量之间进行平衡。通过本发明方法生成的dna序列,同时满足gc含量在40%~60%之间和均聚物长度不大于n的要求,兼容性好。

20、dna存储中发生的错误类型主要有插入、删除和替换三种,现有的方法有的只能解决其中一种或两种错误同时存在的情况,有的可以解决三种错误同时存在的情况,但是需要大量副本或者使用多条序列,而本发明只需要一条序列就可以实现极高的纠错率,并且即使这条序列解码失败,也不会影响到其他序列的纠错与解码,有较高的还原度。



技术特征:

1.一种图像数据dna存储的编解码方法,其特征在于,包括如下步骤:

2.根据权利要求1所述的图像数据dna存储的编解码方法,其特征在于,步骤s1中,获取所需编码的图像,从rgb空间转到yuv空间,然后对图像实施小波变换,将图像转化为二进制数据串。

3.根据权利要求1所述的图像数据dna存储的编解码方法,其特征在于,步骤s2中,枚举所有满足gc含量和均聚物长度要求的碱基序列,建立二进制串与碱基序列的映射表,将组合数据串切割成与二进制串长度相同的多个子串,使用所述映射表将二进制子串进行碱基转换,并对得到的碱基序列进行拼接,得到转换后的碱基序列。

4.根据权利要求1所述的图像数据dna存储的编解码方法,其特征在于,包括如下纠错步骤:

5.根据权利要求1所述的图像数据dna存储的编解码方法,其特征在于,步骤s4中,如果序列的长度与编码时设置的长度相等,并且切分,切分的份数与步骤s3中碱基序列添加校验信息后的重复次数相同,所有子串完全相同,认为没有发生错误,否则认为发生错误。

6.根据权利要求1所述的图像数据dna存储的编解码方法,其特征在于,步骤s5中,如果序列的长度小于编码时设置的长度,则认为发生了删除错误,枚举所有可能的删除位置,对每一种可能的情况,在对应位置插入可能的碱基;如果序列的长度大于编码时设置的长度,则认为发生了插入错误,枚举所有可能的插入位置,对每一种可能的情况,删除这一位置的碱基;如果长度没有发生变化,不进行修改;生成所有可能的情况,并记录,然后使用动态规划算法实现纠错,得到正确的碱基序列并返回。

7.根据权利要求1所述的图像数据dna存储的编解码方法,其特征在于,步骤s6中,对于经过检错与纠错得到的序列,使用编码时设置的映射表,转换为二进制串,根据二进制串中的编号,对二进制串排序得到还原图像,对还原图像使用插值或深度学习等方式进行恢复与增强,得到最终图像。

8.一种图像数据dna存储的编解码系统,其特征在于,应用上述权利要求1至7任一项所述的方法。

9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述的方法的步骤。

10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项的方法的步骤。


技术总结
本发明涉及一种图像数据DNA存储的编解码方法,包括如下步骤:步骤S1、将需要编码的图像转化为二进制数据串,拆分为子串后,按序为其进行二进制编号,拼接编号与二进制子串,得到组合数据串;步骤S2、建立二进制串与碱基序列的映射表后,将组合数据串进行碱基转换,得到碱基序列;步骤S3、将所述碱基序列添加校验信息并重复,得到冗余碱基序列,添加新的引物并进行DNA合成,得到DNA存储数据。本发明的用于DNA存储的图像编解码方法,在编码前先压缩数据,可以提高编码密度,还可以根据实际数据与对还原数据的要求,在压缩比和还原质量之间进行平衡。

技术研发人员:柏园超,秦辰,赵文博,赵逸凡,刘贤明
受保护的技术使用者:哈尔滨工业大学
技术研发日:
技术公布日:2024/4/17
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1