DNA coding method and decoding method based on space filling curve and related device
By adopting a coding method based on space fill curve in the field of DNA storage, matrix extraction, mapping, compression and encoding of storage objects is solved, and the problems of insufficient compression ratio and low efficiency in existing DNA storage compression methods are achieved, and more efficient information storage density.
Patent Information
- Application Number
- CN202411673857.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-21
- Publication Date
- 2025-02-07
AI Technical Summary
The existing compression methods in the field of DNA storage have problems such as insufficient compression ratio and low compression efficiency, especially in the storage and processing of multimedia information.
A DNA encoding method based on a spatial fill curve is adopted. By extracting a matrix by channel to the storage object, mapping it to the spatial fill curve, a one-dimensional sequence is obtained, and compressing and encoding is performed, and DNA sequences containing the information of the storage object are finally generated.
It improves the compression efficiency of the objects to be stored and improves the information storage density. This method is suitable for both lossless compression and lossy compression, and is suitable for a wide range of applications.
Smart Images

Figure CN119400255A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to a DNA storage method, and specifically to a DNA encoding method, a decoding method and related devices based on a space-filling curve. Background Art
[0002] As one of the genetic materials of organisms, DNA can carry biological genetic information in a high-density and stable manner, and has the advantage of being amplifiable, making it an excellent information storage medium. In the field of DNA information storage, the usual practice is to first convert the data to be stored into a binary string, and then convert a string of binary data into a DNA sequence based on specific encoding rules.
[0003] In the field of DNA storage, files are usually compressed by encoding them into DNA sequences and then compressing them based on sequence information. However, the encoding is based on the binary information of the file, not the information itself. This method ignores the distribution characteristics of the original information and therefore does not necessarily guarantee the maximum compression ratio. In addition, for the storage of multimedia information, the multimedia information needs to be processed during compression, which can easily destroy the original information and reduce the compression efficiency. Summary of the invention
[0004] The present application aims to address the technical problems of insufficient compression ratio and low compression efficiency in the current compression methods in the field of DNA storage, and provides a DNA encoding method, decoding method and related devices based on a space filling curve.
[0005] In order to achieve the above objectives, this application adopts the following technical solutions: In a first aspect, the present application proposes a DNA encoding method based on a space-filling curve, comprising: Extract the storage object by channel to obtain at least one matrix; Map each matrix onto the space-filling curve to obtain the corresponding one-dimensional sequence; compressing the one-dimensional sequence to obtain a compressed sequence; The compressed sequence is encoded to obtain a DNA sequence containing information of the object to be stored.
[0006] Furthermore, the space-filling curve comprises a Hilbert curve, a Peano curve, a Zorn curve, a Long curve or a Sierpiński curve.
[0007] Furthermore, the space filling curve adopts a Hilbert curve.
[0008] Furthermore, the method for calculating the parameters of the Hilbert curve includes: Take the maximum value of the size parameter of the object to be stored, find the square root and round it up to the nearest perfect square number as the side length of the Hilbert curve.
[0009] In a second aspect, the present application proposes a DNA decoding method based on a space-filling curve, comprising: Decoding the DNA sequence containing the information of the object to be stored to obtain a compressed sequence; Decompressing the compressed sequence to obtain a corresponding one-dimensional sequence; Map the one-dimensional sequence to a matrix according to the space-filling curve; Reassemble the matrix into the original state of the object to be stored.
[0010] Furthermore, the space-filling curve comprises a Hilbert curve, a Peano curve, a Zorn curve, a Long curve or a Sierpiński curve.
[0011] Furthermore, the space filling curve adopts a Hilbert curve.
[0012] Furthermore, the method for calculating the parameters of the Hilbert curve includes: Take the maximum value of the size parameter of the object to be stored, find the square root and round it up to the nearest perfect square number as the side length of the Hilbert curve.
[0013] In a third aspect, the present application proposes a DNA encoding system based on a space-filling curve, comprising: An extraction module, used for extracting the storage object according to the channel to obtain at least one matrix; A mapping module, used to map each matrix onto a space-filling curve to obtain a corresponding one-dimensional sequence; A compression module, used for compressing the one-dimensional sequence to obtain a compressed sequence; The encoding module is used to encode the compressed sequence to obtain a DNA sequence containing the information of the object to be stored.
[0014] In a fourth aspect, the present application proposes a computer program product, which includes instructions, which implement the above-mentioned DNA encoding method based on space-filling curves when executed by a processor, or implement the above-mentioned DNA decoding method based on space-filling curves when executed by a processor.
[0015] Compared with the prior art, this application has the following beneficial effects: The present application proposes a DNA encoding method based on a space-filling curve and a corresponding decoding method. The beneficial effects of the present application are explained based on the encoding method. The storage object is extracted by channel to obtain at least one matrix, and each matrix is mapped to the space-filling curve to obtain the corresponding one-dimensional sequence, which is then compressed and encoded in sequence. The present application introduces the application of space curves in the DNA information storage compression algorithm. In the process of one-dimensionalization of the minimum unit of the data of the object to be stored, the spatial information between the minimum units of the data is retained as much as possible, thereby improving the compression efficiency of the object to be stored and improving the final information storage density. At the same time, the present application can be applied to both lossless compression and lossy compression, without any restrictions on use, and is more suitable for promotion and application. BRIEF DESCRIPTION OF THE DRAWINGS
[0016] In order to more clearly illustrate the technical solutions of the embodiments of the present application, the drawings required for use in the embodiments will be briefly introduced below. It should be understood that the following drawings only show certain embodiments of the present application and therefore should not be regarded as limiting the scope. For ordinary technicians in this field, other related drawings can be obtained based on these drawings without creative work.
[0017] Figure 1 A schematic diagram of a flow chart of a DNA encoding method based on a space-filling curve in the present application; Figure 2 A schematic diagram of a flow chart of a DNA decoding method based on a space-filling curve in the present application; Figure 3 This is a schematic diagram of the DNA encoding system based on space-filling curves of the present application. DETAILED DESCRIPTION
[0018] In order to make the purpose, technical solution and advantages of the embodiments of the present application clearer, the technical solution in the embodiments of the present application will be clearly and completely described below in conjunction with the drawings in the embodiments of the present application. Obviously, the described embodiments are part of the embodiments of the present application, rather than all the embodiments. The components of the embodiments of the present application described and shown in the drawings here can be arranged and designed in various different configurations.
[0019] Therefore, the following detailed description of the embodiments of the present application provided in the accompanying drawings is not intended to limit the scope of the present application for which protection is sought, but merely represents selected embodiments of the present application. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in the field without creative work are within the scope of protection of the present application.
[0020] It should be noted that similar reference numerals and letters denote similar items in the following drawings, and therefore, once an item is defined in one drawing, further definition and explanation thereof is not required in subsequent drawings.
[0021] In the description of the embodiments of the present application, it should be noted that if the terms "upper", "lower", "horizontal", "inner", etc. appear, the orientation or position relationship indicated is based on the orientation or position relationship shown in the drawings, or the orientation or position relationship in which the invented product is usually placed when used. It is only for the convenience of describing the present application and simplifying the description, and does not indicate or imply that the device or element referred to must have a specific orientation, be constructed and operated in a specific orientation, and therefore cannot be understood as a limitation on the present application. In addition, the terms "first", "second", etc. are only used to distinguish the description, and cannot be understood as indicating or implying relative importance.
[0022] In addition, if the term "horizontal" appears, it does not mean that the component must be absolutely horizontal, but can be slightly tilted. For example, "horizontal" only means that its direction is more horizontal than "vertical", which does not mean that the structure must be completely horizontal, but can be slightly tilted.
[0023] In the description of the embodiments of the present application, it is also necessary to explain that, unless otherwise clearly specified and limited, the terms "set", "install", "connect", and "connect" should be understood in a broad sense. For example, it can be a fixed connection, a detachable connection, or an integral connection; it can be a mechanical connection or an electrical connection; it can be a direct connection, or it can be indirectly connected through an intermediate medium, or it can be the internal connection of two components. For ordinary technicians in this field, the specific meanings of the above terms in this application can be understood according to specific circumstances.
[0024] The medium on which information is transmitted plays an important role. Text and images are the more traditional ways of recording information, and the carrier medium is also simple paper. As the information content becomes richer, audio and video can also be stored, and the storage medium has become silicon-based storage. However, as the amount of information generated increases, the silicon-based storage media currently relied on, such as hard disks and flash memory, are decreasing, and are gradually being exhausted with the explosive growth of data. Therefore, the development of new storage media is an urgent task.
[0025] As one of the genetic materials of organisms, DNA can carry the genetic information of organisms in a high-density and stable manner, and has the advantage of being amplifiable, making it an excellent information storage medium. In the field of DNA information storage, the usual practice is to first convert the data to be stored into a binary string, and then convert this string of binary data into a DNA sequence according to specific encoding rules. At present, the classical encoding methods that are widely used in this process include Church, Goldman, Grass, Blawat, Erlich, "Yin Yang" and "Wukong" encoding algorithms. In order to increase the information carrying capacity of DNA as a storage medium, researchers have also explored compression technologies for DNA information storage, among which the algorithm proposed by Melpomeni Dimopoulou and the "panda" algorithm are representative achievements in this field. These compression encoding and decoding technologies are designed to further improve the efficiency and capacity of DNA storage.
[0026] At present, most encoding and decoding algorithms used for DNA information storage are mainly focused on realizing basic information encoding functions, and their information density is usually limited to about 2 bits per nucleotide (2 bits / nt). This density upper limit is mainly determined by the existing DNA synthesis technology, especially the strict restrictions on the length of DNA sequences that can be synthesized. In actual operation, in order to meet storage requirements, the longer DNA sequences generated by file encoding must be cut into several shorter fragments, and additional index information must be added to facilitate the subsequent accurate recombination and decoding of these fragments. However, this processing method inevitably introduces additional data overhead, resulting in actual storage density lower than the theoretically achievable 2 bits / nt standard.
[0027] In addition, most current compression and decoding algorithms for DNA information storage focus on achieving lossless compression to ensure that the original data can be completely and accurately recovered from the DNA. This is crucial for data types that require high precision, such as text and program code. However, for some specific information sources, their internal structures often contain a large amount of redundant information, which can be identified and utilized through specific algorithms to improve the efficiency of information storage.
[0028] Therefore, by utilizing the characteristics of data and combining advanced compression technology and DNA information storage technology, the efficiency and capacity of information storage can be effectively improved, providing new solutions for future massive data storage.
[0029] Based on the above situation, the present application proposes a DNA encoding method, decoding method and related device based on space filling curve. The present application is described in detail below in conjunction with the embodiments and drawings.
[0030] like Figure 1 As shown, it is a first schematic diagram of a DNA encoding method based on a space filling curve of the present application, which may include: S101, extracting the object to be stored according to the channel to obtain at least one matrix.
[0031] Decompose the object to be stored for subsequent processing. Taking images as an example, channel extraction can be to decompose an RGB image into three channels: red, green, and blue. Each channel corresponds to a matrix, and each matrix represents a channel or attribute of the object to be stored. According to the nature of the object to be stored, a suitable channel extraction method can be selected. For images, image processing libraries (such as OpenCV) can be used for channel decomposition. For other types of data, specific extraction algorithms can also be designed.
[0032] S102, mapping each matrix onto a space filling curve to obtain a corresponding one-dimensional sequence.
[0033] The space filling curve is a mathematical tool that maps a high-dimensional space to a one-dimensional space, maintaining the locality and aggregation of the data. It can convert two-dimensional (or higher-dimensional) matrix data into a one-dimensional sequence for subsequent processing. Select a suitable space filling curve (such as the Hilbert curve, Z-order curve, etc.) and map each element in the matrix to the corresponding position on the curve. Specifically, the row and column indexes of the matrix can be converted to one-dimensional indexes on the curve. Each sequence obtained represents a one-dimensional representation of the original matrix.
[0034] S103: compress the one-dimensional sequence to obtain a compressed sequence.
[0035] Since the original data may contain a lot of redundant information, compression can reduce the amount of data and improve storage and transmission efficiency. In practical applications, a variety of compression algorithms (such as Huffman coding, arithmetic coding, etc.) can be used to compress one-dimensional sequences. After compression, the compressed sequence is shorter than the original one-dimensional sequence, but contains the same amount of information.
[0036] S104, encoding the compressed sequence to obtain a DNA sequence containing information of the object to be stored.
[0037] The compressed sequence is converted into a DNA sequence to facilitate the use of DNA's storage and computing capabilities. In practical applications, it is first necessary to design a coding scheme that maps binary data (compressed sequence) to DNA bases (A, T, C, G). The binary data can be divided into blocks of fixed length and each block is mapped to a DNA base sequence. Then, the coding scheme is optimized according to the constraints of DNA coding. Finally, the optimized coding scheme is applied to the compressed sequence to obtain a DNA sequence containing the information of the object to be stored.
[0038] In order to more clearly explain the DNA encoding method based on the space filling curve of the present application, an image is taken as an example as the object to be stored: 1. Image extraction by channel For RGB images, since each pixel contains information about the three color channels of red (R), green (G), and blue (B), each color channel is usually treated as a separate matrix during processing. After extraction by channel, the original image is decomposed into three matrices, each of which represents all the pixel values of a color channel. This decomposition helps to process each color channel separately later. As an example: read an RGB image file using an image processing library (such as Python's OpenCV, PIL, or Matplotlib). Use the functions provided by the image processing library to separate the R, G, and B channels of the image. In Python's OpenCV, this can usually be achieved through indexing operations because OpenCV stores color channels in BGR order (not RGB). Therefore, the index needs to be adjusted appropriately to obtain the correct channel. Store each separated channel as a separate two-dimensional matrix. These matrices will be used in subsequent processing steps.
[0039] It should be noted that for grayscale images, the situation is much simpler. Because grayscale images have only one color channel and each pixel is represented by only one brightness value, the entire image can be directly regarded as a matrix, in which each element corresponds to the brightness value of a pixel in the image. This single matrix representation makes the processing of grayscale images more direct and simple.
[0040] By separating the channels, each color channel can be processed and analyzed separately, which helps to optimize or enhance specific color channels. In addition, decomposing the image into individual channels can simplify the problem because each channel only contains information for one color.
[0041] 2. Choose the right space-filling curve A space-filling curve is a continuous mapping from a one-dimensional interval (usually the unit interval [0, 1]) to a multidimensional space (usually a two-dimensional or three-dimensional space), and the image of this mapping (i.e. the set of points that the curve passes through) is dense in the multidimensional space. In other words, a space-filling curve can cover any small area in the multidimensional space, even though it is a one-dimensional curve. Typical space-filling curves include the Hilbert curve, the Peano curve, the Zorn curve, the Long curve, the Sierpiński curve, etc.
[0042] Taking the Hilbert curve as an example, map each independent matrix obtained in the previous step. Assuming that the width and height of the original image are w and h respectively, and the side length of the two-dimensional Hilbert space corresponding to the image is n, then n can be obtained by the following formula.
[0043]
[0044] The Hilbert curve in the obtained space is mapped on each matrix. By expanding each sequential point on the two-dimensional matrix, a one-dimensional sequence that retains certain spatial characteristics can be obtained.
[0045] It should be noted that the Hilbert curve is a fractal curve (space-filling curve) that can fill a plane square. It has infinite length but can cover the entire plane with limited space. The Hilbert curve traverses every point in the unit square through continuous convolution and folding, thereby realizing the mapping from one dimension to two dimensions. The construction of the Hilbert curve is usually completed through a recursive process. Starting from a first-order curve, higher-order curves are generated by continuously copying, rotating and connecting the curve. As the order increases, the curve becomes more complex and more closely approximates the enclosed two-dimensional area.
[0046] 3. Compress the obtained one-dimensional information The resulting one-dimensional sequence can be processed using lossy and lossless compression algorithms.
[0047] In practical applications, lossless compression algorithms can maintain the integrity and accuracy of data during compression and decompression without losing any information. For one-dimensional sequences, common lossless compression algorithms include Huffman coding, Run-Length Encoding (RLE), and Lempel-Ziv algorithm. Lossless compression algorithms can be widely used in scenarios where the original data needs to be accurately restored, such as text files, program codes, etc. Lossy compression algorithms discard some data details or redundant information during the compression process to achieve a higher compression ratio. Since a certain amount of information loss will be introduced, lossy compression algorithms are mainly used in situations where data accuracy is not required, such as the compression of multimedia data such as images, audio, and video. For example, differential coding, Fourier transform, quantization, etc. Lossy compression algorithms can significantly reduce the amount of data while maintaining acceptable data quality, so they are widely used in the storage and transmission of multimedia data.
[0048] In practical applications, for the obtained one-dimensional sequence, a suitable compression algorithm can be selected for processing according to the specific application scenario and data characteristics. Lossless compression algorithms are suitable for scenarios where the original data needs to be accurately restored, while lossy compression algorithms are suitable for occasions where data accuracy is not required. In practical applications, the advantages of multiple compression algorithms can also be combined for hybrid encoding to achieve better compression effects.
[0049] 4. Obtain DNA sequence The compressed sequence is encoded using any mapping rule or encoding algorithm to obtain a DNA sequence containing image information.
[0050] In practical applications, when selecting mapping rules or encoding algorithms, multiple factors can be considered, including data characteristics, compression ratio requirements, encoding complexity, and decoding feasibility. Common mapping rules include simple binary to DNA base mapping (such as 00→A, 01→T, 10→C, 11→G), but more complex encoding algorithms such as Huffman coding and Lempel-Ziv-Welch (LZW) coding can also be used to achieve higher compression ratios.
[0051] When encoding is actually performed, the one-dimensional sequence containing the image information can be preprocessed, which may include steps such as normalization and quantization of the data to ensure that the data is suitable for the subsequent encoding process. Then, according to the selected mapping rule or encoding algorithm, the preprocessed data is converted into a DNA sequence. For example, if a simple binary to DNA base mapping rule is adopted, each binary number can be directly mapped to the corresponding DNA base. If a more complex encoding algorithm is adopted, it is necessary to encode according to the rules of the algorithm. In order to ensure the accuracy and stability of the DNA sequence, error check codes such as cyclic redundancy check (CRC) can also be added to the encoding process. In addition, error correction coding technology can also be used to improve the fault tolerance of the DNA sequence. When generating a DNA sequence, the encoded DNA sequence can be generated in the laboratory by chemical synthesis. When storing the DNA sequence, the generated DNA sequence can be stored on various carriers, such as DNA microarrays, plasmids, bacteria, etc., which can provide a stable environment to protect the DNA sequence from damage by external factors.
[0052] like Figure 2 As shown, it is a schematic diagram of the DNA decoding method based on the space filling curve of the present application, which may include: S201, decoding a DNA sequence containing information of an object to be stored to obtain a compressed sequence.
[0053] S202, decompress the compressed sequence to obtain a corresponding one-dimensional sequence.
[0054] S203, mapping the one-dimensional sequence to a matrix according to the space filling curve.
[0055] S204, recombining the matrix into the original state of the object to be stored.
[0056] It should be noted that the DNA decoding method of the present application corresponds to the DNA encoding method of the present application, for example, the compression and decompression methods, the decoding and encoding methods, and the mapping methods should all correspond to each other to ensure the accuracy of the decoded data. Other embodiments of the DNA decoding method can adopt the embodiments of the DNA encoding method of the present application, which will not be repeated here.
[0057] The present application can retain the spatial characteristics of the two-dimensional matrix as much as possible during the process of one-dimensionalization of the object to be stored, keep the relative position between the minimum units of data unchanged, and improve the subsequent compression efficiency. In the existing DNA information storage compression algorithm, when encoding an image, the method of simply expanding the pixels of each row row by row is often used to convert the two-dimensional matrix into one dimension. Such a method can obtain a one-dimensional sequence, but for the pixels in the matrix, a certain amount of spatial information is lost, so that the pixels that were originally close in the matrix have a farther distance in the one-dimensional sequence. At the same time, for the pixels in the image, the values of the pixels with closer spatial positions also have a smaller difference, and the clustering of points with similar values is conducive to the subsequent processing of the compression algorithm. Therefore, the traditional one-dimensional method will reduce the subsequent compression efficiency. Based on this point, the present application improves the method of one-dimensionalization of the two-dimensional matrix in the process of image encoding, and uses the space filling curve to expand the two-dimensional matrix. Such an operation makes the one-dimensional sequence after expansion still maintain certain spatial characteristics, that is, in the one-dimensional sequence, the values with smaller difference still maintain certain clustering characteristics. It can improve the efficiency of the compression algorithm and increase the density of encoded information.
[0058] like Figure 3 As shown, it is a schematic diagram of the DNA encoding system based on the space filling curve of the present application, which may include: An extraction module, used for extracting the storage object according to the channel to obtain at least one matrix; A mapping module, used to map each matrix onto a space-filling curve to obtain a corresponding one-dimensional sequence; A compression module, used for compressing the one-dimensional sequence to obtain a compressed sequence; The encoding module is used to encode the compressed sequence to obtain a DNA sequence containing the information of the object to be stored.
[0059] It should be noted that in the several embodiments provided in the present application, it should be understood that the disclosed devices and methods can be implemented in other ways. For example, the system embodiments described above are merely schematic. For example, the division of each module is only a logical function division. There may be other division methods in actual implementation. For example, multiple modules can be combined or integrated into another device, or some features can be ignored or not executed. The module described as a separate component may or may not be physically separated. The component displayed as a module may be a physical unit or multiple physical units, that is, it may be located in one place, or it may be distributed in multiple different places. Some or all of the modules may be selected according to actual needs to achieve the purpose of the scheme of this embodiment.
[0060] In addition, each module in each embodiment of the present invention may be integrated into a processing unit, each module may exist physically separately, or two or more modules may be integrated into one unit. The above-mentioned integrated unit may be implemented in the form of hardware or in the form of a software functional unit.
[0061] The present application also proposes a computer program product, which includes instructions, and when the instructions are executed by a processor, the steps in the above-mentioned DNA encoding method embodiment based on space filling curve are implemented, or when the instructions are executed by a processor, the DNA decoding method based on space filling curve is implemented. Alternatively, when the processor executes the computer program, the functions of each module / unit in the above-mentioned system embodiment are implemented.
[0062] The computer program may be divided into one or more modules / units, and the one or more modules / units are stored in a memory and executed by the processor to accomplish the present invention.
[0063] The carrier for implementing the above-mentioned computer program product may be a computer device, or the computer program product may be stored in a computer storage medium.
[0064] The computer device may be a desktop computer, a notebook computer, a palm computer, a cloud server, etc. The computer device may include, but is not limited to, a processor and a memory.
[0065] The processor may be a central processing unit (CPU), or other general-purpose processors, digital signal processors (DSP), application-specific integrated circuits (ASIC), field-programmable gate arrays (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc.
[0066] The memory may be used to store the computer programs and / or modules, and the processor implements various functions of the computer device by running or executing the computer programs and / or modules stored in the memory and calling the data stored in the memory.
[0067] If the module / unit integrated in the computer device is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the present invention implements all or part of the processes in the above-mentioned embodiment method, and can also be completed by instructing the relevant hardware through a computer program. The computer program can be stored in a computer-readable storage medium, and the computer program can implement the steps of the above-mentioned various method embodiments when executed by the processor. Among them, the computer program includes computer program code, and the computer program code can be in source code form, object code form, executable file or some intermediate form. The computer-readable medium may include: any entity or device capable of carrying the computer program code, recording medium, U disk, mobile hard disk, disk, optical disk, computer memory, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), electrical carrier signal, telecommunication signal and software distribution medium, etc.
[0068] The above are only preferred embodiments of the present application and are not intended to limit the present application. For those skilled in the art, the present application may have various modifications and variations. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present application shall be included in the protection scope of the present application.
Claims
1. A DNA encoding method based on space filling curves, characterized in that: include: Extract the storage object by channel to obtain at least one matrix; Map each matrix onto the space-filling curve to obtain the corresponding one-dimensional sequence; compressing the one-dimensional sequence to obtain a compressed sequence; The compressed sequence is encoded to obtain a DNA sequence containing information of the object to be stored.
2. The DNA encoding method based on space filling curve according to claim 1, characterized in that: The space filling curve comprises a Hilbert curve, a Peano curve, a Zorn curve, a Long curve or a Sierpiński curve.
3. The DNA encoding method based on space filling curve according to claim 2, characterized in that: The space filling curve adopts the Hilbert curve.
4. The DNA encoding method based on space filling curve according to claim 3, characterized in that: The method for calculating the parameters of the Hilbert curve comprises: Take the maximum value of the size parameter of the object to be stored, find the square root and round it up to the nearest perfect square number as the side length of the Hilbert curve.
5. A DNA decoding method based on space filling curve, characterized in that: include: Decoding the DNA sequence containing the information of the object to be stored to obtain a compressed sequence; Decompressing the compressed sequence to obtain a corresponding one-dimensional sequence; Map the one-dimensional sequence to a matrix according to the space-filling curve; Reassemble the matrix into the original state of the object to be stored.
6. The DNA decoding method based on space filling curve according to claim 5, characterized in that: The space filling curve comprises a Hilbert curve, a Peano curve, a Zorn curve, a Long curve or a Sierpiński curve.
7. The DNA decoding method based on space filling curve according to claim 6, characterized in that: The space filling curve adopts the Hilbert curve.
8. The DNA decoding method based on space filling curve according to claim 6, characterized in that: The method for calculating the parameters of the Hilbert curve comprises: Take the maximum value of the size parameter of the object to be stored, find the square root and round it up to the nearest perfect square number as the side length of the Hilbert curve.
9. A DNA encoding system based on space-filling curves, characterized in that: include: An extraction module, used for extracting the storage object according to the channel to obtain at least one matrix; A mapping module, used to map each matrix onto a space-filling curve to obtain a corresponding one-dimensional sequence; A compression module, used for compressing the one-dimensional sequence to obtain a compressed sequence; The encoding module is used to encode the compressed sequence to obtain a DNA sequence containing the information of the object to be stored.
10. A computer program product, characterized in that: The computer program product comprises instructions, which when executed by a processor implement the DNA encoding method based on a space-filling curve as described in any one of claims 1-4, or, when executed by a processor, implement the DNA decoding method based on a space-filling curve as described in any one of claims 5-8.