一种半色调二维码的生成方法和系统与流程

文档序号:11920925阅读:324来源:国知局
一种半色调二维码的生成方法和系统与流程

本发明涉及二维码生成技术领域,尤其涉及一种半色调二维码的生成方法和系统。



背景技术:

二维码是用某种特定的几何图形按照一定规律在平面(二维方向)上分布的黑白相间的图形,巧妙地通过“黑白”代指计算机内部逻辑基础的“01”来将编码转化为实际的几何图形图案。通过图像输入设备或光电扫描设备自动识读来实现信息的自动处理。二维码与条形码一样都是一种信息编码方式,是条形码从一维到二维的推广。由于二维码比条形码多出了一个维度,因此可以存储更多的信息内容。

传统的技术的做法是,对于给定的信息,利用特定的算法进行编码,并将编码后的结果转化为黑白相间的图形模块,予以呈现,即可生成所需的二维码,该方法生成的二维码由于只关注信息的存储与编码,因此生成的二维码虽然功能满足要求,但其外观并不美观,显得杂乱无章。

另有技术,同样也是先将原始信息进行编码,然后生成相对应的二维码,在此基础上,为了让二维码拥有特定图片的外观,技术中对图片放缩至小尺寸,并将其与二维码中央的小部分区域进行替换嵌入,但是该方法只是简单的将图片与二维码某部分相替换,而无法做到完美的融合在一起。



技术实现要素:

基于背景技术存在的技术问题,本发明提出一种半色调二维码的生成方法和系统。

本发明提供一种半色调二维码的生成方法,其特征在于,所述方法包括以下步骤:

S1、获取用户输入的编码信息并生成原始二维码;

S2、获取用户输入的参考图片,对参考图片每个像素点进行显著度分析,得到参考图片每个像素点的显著度值;

S3、根据所述参考图片每个像素点的显著度值对原始二维码进行黑色模块密度调整处理,得到目标二维码并输出。

其中,在S2中,所述获取用户输入的参考图片,对参考图片每个像素点进行显著度分析,得到参考图片每个像素点的显著度值,具体包括:

S21、获取用户输入的参考图片,根据所述原始二维码尺寸对所述参考图片进行缩放,得到与所述原始二维码尺寸对应的标准图片;

S22、对所述标准图片进行去噪处理,增强所述标准图片的对比度;

S23、将S22中去噪处理后的标准图片每个像素点进行灰度处理,得到所述标准图片每个像素点的灰度值,所述标准图片每个像素点的灰度值即为所述标准图片每个像素点的显著度值。

其中,在S3中,所述根据所述参考图片每个像素点的显著度值对原始二维码进行黑色模块密度调整处理,得到目标二维码,具体包括:

S31、将所述原始二维码平均分为N×N个模块;

S32、获取所述原始二维码N×N个模块中任一模块,将所述任一模块平均分为3×3个子模块;

S33、将所述3×3个子模块中中间的模块设置为原始模块,根据所述参考图片每个像素点的显著度值计算周边8个子模块中黑色模块数量K;

S34、将所述8个子模块中K个子模块设置为黑色模块,将另外8-K个子模块设置为白色模块;

S35、对所述原始二维码中N×N个模块进行S32、S33、S34操作,直到所述原始二维码中N×N个模块均操作完,得到目标二维码。

其中,在S34中,在将所述8个子模块中K个子模块设置为黑色模块时,通过随机选取K个子模块,将所述K个子模块设置为黑色模块;

和/或,在将所述8个子模块中K个子模块设置为黑色模块时,通过指定K个子模块,将所述K个子模块设置为黑色模块。

一种半色调二维码的生成系统,其特征在于,所述系统包括:

原始二维码生成模块,用于获取用户输入的编码信息并生成原始二维码;

显著度分析模块,用于获取用户输入的参考图片,对参考图片每个像素点进行显著度分析,得到参考图片每个像素点的显著度值;

目标二维码生成模块,用于根据所述参考图片每个像素点的显著度值对原始二维码进行黑色模块密度调整处理,得到目标二维码。

其中,所述显著度分析模块,具体用于:

获取用户输入的参考图片,将所述参考图片按照所述原始二维码尺寸进行缩放,得到与所述原始二维码尺寸对应的标准图片;

对所述标准图片进行去噪处理,增强所述标准图片的对比度;

将所述去噪处理后的标准图片每个像素点进行灰度处理,得到所述标准图片每个像素点的灰度值,所述标准图片每个像素点的灰度值即为所述标准图片每个像素点的显著度值。

其中,所述目标二维码生成模块,包括:划分单元、细分单元、数量计算单元、颜色设置单元、循环单元;

划分单元,用于将所述原始二维码平均分为N×N个模块;

细分单元,用于获取所述原始二维码N×N个模块中任一模块,将所述任一模块平均分为3×3个子模块;

数量计算单元,用于将所述3×3个子模块中中间的模块设置为原始模块,根据所述参考图片每个像素点的显著度值计算周边8个子模块中黑色模块数量K;

颜色设置单元,用于将所述8个子模块中K个子模块设置为黑色模块,将另外8-K个子模块设置为白色模块;

循环单元,用于将所述原始二维码中N×N个模块进行细分单元、数量计算单元、颜色设置单元循环操作,直到所述原始二维码中N×N个模块均操作完,得到目标二维码。

优选地,所述颜色设置单元具体用于:在将所述8个子模块中K个子模块设置为黑色模块时,通过随机选取K个子模块,将所述K个子模块设置为黑色模块;

和/或,所述颜色设置单元具体用于:在将所述8个子模块中K个子模块设置为黑色模块时,通过指定K个子模块,将所述K个子模块设置为黑色模块。

优选地,还包括输出模块,用于对目标二维码生成模块生成的目标二维码进行输出。

本发明中,通过将用户给定的需要编码存储的信息生成原始二维码,将用户上传的图片进行像素重要性处理,得到表示用户上传的图片每个像素点的灰度值的强度图,再根据所述强度图中每个像素点的灰度值对所述原始二维码进行黑色模块密度调整处理,得到目标二维码,此目标二维码不仅存储了需要编码的信息,同时,让原始二维码不再杂乱无章,使其呈现出给定图片的外观,提高用户体验。

附图说明

图1是本发明提出的一种半色调二维码的生成方法流程图;

图2是本发明提出的一种半色调二维码的生成系统结构图;

图3为本发明提出的一种生成半色调二维码方法的实施例图。

具体实施方式

参照图1,图1为本发明提出的一种半色调二维码的生成方法流程图。

如图1所示,本发明提出的一种半色调二维码的生成方法,所述方法包括以下步骤:

步骤S1、获取用户输入的编码信息并生成原始二维码;

在本发明实施例中,所述用户输入的编码的信息具体包括:中文、日文、英文、数字、字母、符号中一种或多种;

步骤S2、获取用户输入的参考图片,对参考图片每个像素点进行显著度分析,得到参考图片每个像素点的显著度值;

在本步骤中,所述获取用户输入的参考图片,对参考图片每个像素点进行显著度分析,得到参考图片每个像素点的显著度值,具体包括:

S21、获取用户输入的参考图片,根据所述原始二维码尺寸对所述参考图片进行缩放,得到与所述原始二维码尺寸对应的标准图片;

S22、对所述标准图片进行去噪处理,增强所述标准图片的对比度;

S23、将S22中去噪处理后的标准图片每个像素点进行灰度处理,得到所述标准图片每个像素点的灰度值,所述标准图片每个像素点的灰度值即为所述标准图片每个像素点的显著度值。

具体的,在S21中,由于用户上传的图片大小不一,需要对用户上传的图片进行统一性处理,保证用户上传的图片大小和原始二维码大小一致,方便后续对图片的处理;

具体的,在S22中,由于用户上传的图片清晰度不同,曝光度不同,通过去噪处理,增强用户上传图片的对比度,提高生成的目标二维码和用户上传图片的相似度;

具体的,在S23中,对标准图片进行灰度处理后,得到标准图片每个像素点的灰度值,所述的灰度处理是所述显著度分析的一种实施方式,在这种实施方式下,灰度处理后得到的每个像素点的灰度值即为每个像素点显著度值。

步骤S3、根据所述参考图片每个像素点的显著度值对原始二维码进行黑色模块密度调整处理,得到目标二维码并输出。

在本步骤中,所述根据所述参考图片每个像素点的显著度值对原始二维码进行黑色模块密度调整处理,得到目标二维码,具体包括:

S31、将所述原始二维码平均分为N×N个模块;

S32、获取所述原始二维码N×N个模块中任一模块,将所述任一模块平均分为3×3个子模块;

S33、将所述3×3个子模块中中间的模块设置为原始模块,根据所述参考图片每个像素点的显著度值计算周边8个子模块中黑色模块数量K;

S34、将所述8个子模块中K个子模块设置为黑色模块,将另外8-K个子模块设置为白色模块;

S35、对所述原始二维码中N×N个模块进行S32、S33、S34操作,直到所述原始二维码中N×N个模块均操作完,得到目标二维码。

具体的,在S34中,在将所述8个子模块中K个子模块设置为黑色模块时,通过随机选取K个子模块,将所述K个子模块设置为黑色模块;

和/或,在将所述8个子模块中K个子模块设置为黑色模块时,通过指定K个子模块,将所述K个子模块设置为黑色模块。

本步骤中,通过所述参考图片每个像素点的显著度值对所述原始二维码进行黑色模块密度调整处理,设置二维码中相对应位置处黑色模块的出现频率次数,使原始二维码在实现储存给定信息的同时,呈现出一个给定图片的外观。

参照图2,图2为本发明提出的一种半色调二维码的生成系统结构图。

如图2所示,本发明提出的一种半色调二维码的生成方法,所述系统包括:

原始二维码生成模块201,用于获取用户输入的编码信息并生成原始二维码;

在本发明实施例中,原始二维码生成模块具体用于,所述用户输入的编码信息具体包括:中文、日文、英文、数字、字母、符号中一种或多种;

显著度分析模块202,与原始二维码生成模块201连接,用于获取用户输入的参考图片,对参考图片每个像素点进行显著度分析,得到参考图片每个像素点的显著度值;

具体的,所述显著度分析模块,具体用于:

获取用户输入的参考图片,将所述参考图片按照所述原始二维码尺寸进行缩放,得到与所述原始二维码尺寸对应的标准图片,由于用户上传的图片大小不一,需要对用户上传的图片进行统一性处理,保证用户上传的图片大小和原始二维码大小一致,方便后续对图片的处理;

对所述标准图片进行去噪处理,增强所述标准图片的对比度,由于用户上传的图片清晰度不同,曝光度不同,通过去噪处理,增强用户上传图片的对比度,提高生成的目标二维码和用户上传图片的相似度;

将所述去噪处理后的标准图片每个像素点进行灰度处理,得到所述标准图片每个像素点的灰度值,所述标准图片每个像素点的灰度值即为所述标准图片每个像素点的显著度值,对标准图片进行灰度处理后,得到标准图片每个像素点的灰度值,所述的灰度处理是所述显著度分析的一种实施方式,在这种实施方式下,灰度处理后得到的每个像素点的灰度值即为每个像素点显著度值。

目标二维码生成模块203,与显著度分析模块202连接,用于根据所述参考图片每个像素点的显著度值对原始二维码进行黑色模块密度调整处理,得到目标二维码。

其中,所述目标二维码生成模块,包括:划分单元、细分单元、数量计算单元、颜色设置单元、循环单元;

划分单元,用于将所述原始二维码平均分为N×N个模块;

细分单元,用于获取所述原始二维码N×N个模块中任一模块,将所述任一模块平均分为3×3个子模块;

数量计算单元,用于将所述3×3个子模块中中间的模块设置为原始模块,根据所述参考图片每个像素点的显著度值计算周边8个子模块中黑色模块数量K;

颜色设置单元,用于将所述8个子模块中K个子模块设置为黑色模块,将另外8-K个子模块设置为白色模块;

循环单元,用于将所述原始二维码中N×N个模块进行细分单元、数量计算单元、颜色设置单元循环操作,直到所述原始二维码中N×N个模块均操作完,得到目标二维码。

具体的,还包括输出模块204,与目标二维码生成模块203连接,用于对目标二维码生成模块生成的目标二维码进行输出。

参照图3,图3为本发明提出的一种生成半色调二维码方法的实施例图;

如图3所示,本发明提出的实际例具体步骤为:

1)输入需要编码的内容:我的梦想是成为火影!,生成一张原始二维码;

2)上传一张给定的图片作为目标二维码的外观;

3)根据用户上传的给的那个图片生成既存储了需要编码的信息,同时能呈现出给定图片外观的目标二维码;

其中,图3中原始二维码和目标二维码均可扫描。

通过本发明的技术方案,将用户给定的需要编码存储的信息生成原始二维码,将用户上传的图片进行像素重要性处理,得到表示用户上传的图片每个像素点的灰度值的强度图,再根据所述强度图中每个像素点的灰度值对所述原始二维码进行黑色模块密度调整处理,得到目标二维码,此目标二维码不仅存储了需要编码的信息,同时,让原始二维码不再杂乱无章,使其呈现出给定图片的外观,提高用户体验。

以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,根据本发明的技术方案及其发明构思加以等同替换或改变,都应涵盖在本发明的保护范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1