本发明涉及数据处理,具体而言,涉及一种数据存储、识别方法及装置。
背景技术:
1、随着计算机信息科学的发展,人们已经开始利用二维码作为存储介质进行数据存储。
2、二维码,又称二维条码(2-dimensional barcode)或矩阵条形码(matrixbarcode),是使用某种特定的几何图形,在平面(二维方向上)按一定规律分布的、记录数据信息的图像。由于一维条形码只能在一个方向(一般是水平方向)上表达信息,且只能存储数字和字母,渐渐无法满足技术人员的需要,因此二维码应运而生。二维码可以在水平和垂直方向存储信息,且能存储汉字、图片等复杂信息,一般具有一定的校验功能,所以拥有信息容量大、可靠性高、成本低、保密性强、使用便捷等特点,应用领域也非常广泛。
3、由于黑白二维码每个点只能容纳一位二进制数据,存储的数据量比较小。为了充分利用二维码矩阵,存储更多信息,研究人员又通过给各点的颜色赋予意义的方法,开发出了彩色二维码。但是,彩色二维码需定义颜色与值的对应关系,导致占用了图像空间,降低了数据容量,也降低了数据存储、识别效率。
技术实现思路
1、本发明的目的在于,针对上述现有技术中的不足,提供一种数据存储、识别方法及装置,以解决现有技术中数据存储效率较低、容量较小等问题。
2、为实现上述目的,本技术实施例采用的技术方案如下:
3、第一方面,本技术实施例提供一种数据存储方法,所述方法包括:
4、获取待存储数据;
5、将所述待存储数据转换为二进制待存储数据;
6、根据所述二进制待存储数据与预设编码版本,确定纠错码和控制码;
7、按照所述预设编码版本的编码规则,将所述二进制待存储数据、所述纠错码以及所述控制码填充至所述预设编码版本对应的编码矩阵中,形成二进制编码矩阵;
8、采用预设编码矩阵转换表,将所述二进制编码矩阵转换为碱基字符,形成dna字符矩阵;其中,所述预设编码矩阵转换表中存储有二进制数据与碱基字符的映射关系;
9、根据所述dna字符矩阵,生成字符二维码图像,以采用所述字符二维码图像存储所述待存储数据。
10、可选地,所述根据所述二进制待存储数据与预设编码版本,确定纠错码和控制码,包括:
11、根据预设纠错等级与所述二进制待存储数据的字节数,确定所述纠错码的字节数;
12、根据所述二进制待存储数据与所述纠错码的字节数确定所述纠错码;
13、根据所述预设编码版本以及所述预设纠错等级确定所述控制码。
14、可选地,所述根据预设纠错等级与所述二进制待存储数据的字节数,确定所述纠错码的字节数,包括:
15、根据纠错等级与纠错参数映射关系,确定所述预设纠错等级对应的纠错参数;
16、根据所述纠错参数与所述二进制待存储数据的字节数,确定所述纠错码的字节数。
17、可选地,所述方法还包括:
18、采用所述预设编码矩阵转换表,将所述dna字符矩阵转换为预设颜色,形成彩色矩阵;其中,所述预设编码矩阵转换表中还存储有所述碱基字符与颜色的映射关系;
19、根据所述彩色矩阵,生成彩色二维码图像,以采用所述彩色二维码图像存储所述待存储数据。
20、第二方面,本技术实施例提供一种数据识别方法,所述方法包括:
21、对二维码图像进行识别,得到所述二维码图像对应的二进制编码矩阵;
22、在所述二进制编码矩阵中确定控制码、纠错码以及二进制业务数据;
23、根据所述纠错码对所述二进制业务数据进行修复;
24、将修复后的二进制业务数据转化为业务字符,得到识别后的业务数据。
25、可选地,所述在所述二进制编码矩阵中确定控制码、纠错码以及二进制业务数据,包括:
26、在所述二进制编码矩阵中确定所述控制码,得到编码版本、纠错等级;
27、根据所述编码版本对应的格式以及所述纠错等级,在所述二进制编码矩阵中确定所述二进制业务数据和所述纠错码。
28、可选地,在所述对二维码图像进行识别,得到所述二维码图像对应的二进制编码矩阵之前,所述方法还包括:
29、对所述二维码图像进行区域分割,得到多个区域的子二维码图像;
30、所述对二维码图像进行识别,得到所述二维码图像对应的二进制编码矩阵,包括:
31、对所述多个区域的子二维码图像进行识别,得到所述二进制编码矩阵。
32、第三方面,本技术实施例提供一种数据存储装置,所述装置包括:
33、获取模块,用于获取待存储数据;
34、第一转换模块,用于将所述待存储数据转换为二进制待存储数据;
35、确定模块,用于根据所述二进制待存储数据与所述预设编码版本,确定纠错码和控制码;
36、第一形成模块,用于按照所述预设编码版本的编码规则,将所述二进制待存储数据、所述纠错码以及所述控制码填充至所述预设编码版本对应的编码矩阵中,形成二进制编码矩阵;
37、第二形成模块,用于采用预设编码矩阵转换表,将所述二进制编码矩阵转换为碱基字符,形成dna字符矩阵;其中,所述预设编码矩阵转换表中存储有二进制数据与碱基字符的映射关系;
38、生成模块,用于根据所述dna字符矩阵,生成字符二维码图像,以采用所述字符二维码图像存储所述待存储数据。
39、第四方面,本技术实施例提供一种数据识别装置,所述装置包括:
40、识别模块,用于对二维码图像进行识别,得到所述二维码图像对应的二进制编码矩阵;
41、确定模块,用于在所述二进制编码矩阵中确定控制码、纠错码以及二进制业务数据;
42、修复模块,用于根据所述纠错码对所述二进制业务数据进行修复;
43、第二转换模块,用于将修复后的二进制业务数据转化为业务字符,得到识别后的业务数据。
44、第五方面,本技术实施例提供一种电子设备,包括:处理器、存储介质,所述处理器与所述存储介质之间通过总线通信连接,所述存储介质存储有所述处理器可执行的程序指令,所述处理器调用存储介质中存储的程序,以执行如第一方面任一所述的数据存储方法或第二方面任一所述的数据识别方法的步骤。
45、相对于现有技术而言,本技术具有以下有益效果:
46、本技术提供一种数据存储、识别方法及装置,通过获取待存储数据;将待存储数据转换为二进制待存储数据;根据二进制待存储数据与预设编码版本,确定纠错码和控制码;按照预设编码版本的编码规则,将二进制待存储数据、纠错码以及控制码填充至预设编码版本对应的编码矩阵中,形成二进制编码矩阵;采用预设编码矩阵转换表,将二进制编码矩阵转换为碱基字符,形成dna字符矩阵;其中,预设编码矩阵转换表中存储有二进制数据与碱基字符的映射关系;根据dna字符矩阵,生成字符二维码图像,以采用字符二维码图像存储待存储数据。从而,提高了数据存储效率,增大了数据存储容量。