CN110110805A - 一种基于机器学习的动态二维码识别方法和设备 - Google Patents

一种基于机器学习的动态二维码识别方法和设备 Download PDF

Info

Publication number
CN110110805A
CN110110805A CN201910403227.3A CN201910403227A CN110110805A CN 110110805 A CN110110805 A CN 110110805A CN 201910403227 A CN201910403227 A CN 201910403227A CN 110110805 A CN110110805 A CN 110110805A
Authority
CN
China
Prior art keywords
dimensional code
color
machine learning
training
dynamic
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201910403227.3A
Other languages
English (en)
Inventor
詹同
李文中
陈旭
陆桑璐
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nanjing University
Original Assignee
Nanjing University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nanjing University filed Critical Nanjing University
Priority to CN201910403227.3A priority Critical patent/CN110110805A/zh
Publication of CN110110805A publication Critical patent/CN110110805A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K17/00Methods or arrangements for effecting co-operative working between equipments covered by two or more of main groups G06K1/00 - G06K15/00, e.g. automatic card files incorporating conveying and reading operations
    • G06K17/0022Methods or arrangements for effecting co-operative working between equipments covered by two or more of main groups G06K1/00 - G06K15/00, e.g. automatic card files incorporating conveying and reading operations arrangements or provisious for transferring data to distant stations, e.g. from a sensing device
    • G06K17/0025Methods or arrangements for effecting co-operative working between equipments covered by two or more of main groups G06K1/00 - G06K15/00, e.g. automatic card files incorporating conveying and reading operations arrangements or provisious for transferring data to distant stations, e.g. from a sensing device the arrangement consisting of a wireless interrogation device in combination with a device for optically marking the record carrier
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Computation (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Evolutionary Biology (AREA)
  • Software Systems (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Medical Informatics (AREA)
  • Mathematical Physics (AREA)
  • Computing Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Image Analysis (AREA)

Abstract

本发明公开了一种基于机器学习的动态二维码识别方法和设备,在已有动态二维码传输系统基础上,基于机器学习算法来识别二维码小方块的颜色。其中,发送方在发送原始的数据二维码之前会先生成和发送一些训练二维码,用于在接收方构建机器学习模型。接收方则从拍摄到的训练二维码中提取出颜色信息(特征)和数据(标签),训练出机器学习模型,用于预测拍摄到的数据二维码中每个小方块颜色信息,从而还原数据并恢复传输的信息。和现有的动态二维码识别方法相比,本发明不仅降低了算法复杂度,而且提升动态二维码识别成功率,提升了系统性能。

Description

一种基于机器学习的动态二维码识别方法和设备
技术领域
本发明涉及机器学习领域和动态二维码传输,具体为一种基于机器学习的动态二维码识别方法和设备。
背景技术
在机器学习中,分类器是指在已有数据的基础上构造出一个分类模型,这个模型能够把数据记录映射到给定类别中的某一个,从而应用于数据预测。不同的测试数据能够构造出不同的分类器,这些分类器总是更擅长于预测与其测试数据相似的数据;混合专家模型则以这些已经构建好的分类器为基础,以少量的测试数据来确定每个分类器的权重,加权这些分类器的预测结果作为其预测结果,这样便可以以较少的测试数据,构造出一个更加强大的分类器。
动态二维码传输是一种以动态二维码为信息载体,以可见光为媒介的单向近距离通信方式。如图1所示是动态二维码传输的总体框架,其通信的工作过程如下:在发送方,输入的数据首先被分割成一定长度的数据段,这些数据段随后通过一些技术调制(编码)成一系列的二维码,并按次序动态显示在发送方的屏幕上;接收方通过其摄像头拍摄到发送方屏幕上的二维码,得到一连串二维码帧,这些拍摄到的二维码随后被解调(解码)并恢复为数据段,这些数据段经过拼接即还原出原始数据。这样一个完整的传输过程就完成了。
解调的过程就是将拍摄到的二维码图像转换为数据,即将二维码中小方块的颜色转换为数据,每个小方块嵌入的数据是所有可能嵌入数据的其中一个,那么这就是一个典型的分类问题。
现有的动态二维码传输系统都是根据自身需要、考虑的因素、针对的场景等设计出一组预设的规则来识别二维码小方块(即区分小方块的颜色),这些识别算法复杂且缺乏通用性,更糟糕的是,基于规则的识别算法往往对环境变化的适应性低,且难以解决小方块颜色重叠的问题。
发明内容
发明目的:针对现有技术的问题,本发明提出一种基于机器学习的动态二维码识别方法,降低算法复杂度,且提升动态二维码识别成功率,提升系统性能。
技术方案:根据本发明的第一方面,提供一种基于机器学习的动态二维码识别方法,包括以下步骤:
S10、发送方生成训练二维码;
S20、发送方在训练二维码和原始二维码周围添加辅助识别信息后将其发送;
S30、接收方从拍摄到的二维码中识别出训练二维码,并生成这个训练二维码中嵌入的数据作为机器学习标签;
S40、接收方从拍摄到的二维码中提取小方块的颜色信息,作为机器学习特征;
S50、接收方由标签和特征建立机器学习模型,包括:
c)由标签和特征,建立分类器模型;
d)由多个分类器模型,建立混合专家模型;
S60、接收方将建立的机器学习模型应用到拍摄到的原始二维码中,预测出每个小方块的颜色。
根据本发明的第二方面,提供一种计算机设备,所述设备包括:
一个或多个处理器;
存储器;以及
一个或多个程序,其中所述一个或多个程序被存储在所述存储器中,并且被配置为由所述一个或多个处理器执行,所述程序被处理器执行时实现如本发明第一方面所述的步骤。
有益效果:本发明通过利用机器学习的强大分类能力,来解决动态二维码识别过程中的问题,以已有的动态二维码传输系统作为基础,替换其二维码识别算法为基于机器学习的方法,降低了算法复杂度,并提升动态二维码识别成功率,从而提升系统性能。
附图说明
图1是动态二维码传输的总体框架图;
图2是本发明基于机器学习的动态二维码识别方法的流程图;
图3是本发明的混合专家模型的图示。
具体实施方式
下面结合附图对本发明的技术方案做更进一步的说明。
图2是基于机器学习的动态二维码识别方法的流图,在已有系统的基础上主要添加了三个步骤,发送方的训练二维码生成器和边框设计,接收方的基于机器学习的帧解调。下面参照图2对本方法进行具体说明。应当了解,新增步骤系作为原系统的补充和增强,需结合原系统形成完整的动态二维码识别方法,但并未改变原系统中原有的分段、调制、显示、接收、恢复的处理过程,因此对于这些过程的具体描述,可参照现有技术,本发明中不再赘述。
步骤S10,生成训练二维码。
训练二维码的生成过程:每个训练二维码都有一个序号,以这个序号作为随机数种子,生成伪随机的数据,嵌入到训练二维码中,同时序号会嵌入到训练二维码的边框中。在一个实施例中,训练二维码的序号是,将每个训练二维码按顺序升序编号。单个训练二维码的数据可以重复生成。训练二维码的目的在于可模拟出所有可能的小方块颜色情况。
步骤S20,为训练二维码和原始二维码添加辅助识别信息并发送。
辅助识别信息详细的解释如下,新增四周边框:
(1)训练二维码序号:从0开始顺序增加,对训练二维码进行格雷码编码,以二进制形式嵌入到上边框。原始二维码不进行此步操作。
(2)训练二维码标识:为了尽量简单可靠将拍摄到的训练二维码和原始二维码区分开,对训练二维码进行标识。实施例中训练二维码标识是下边框的一个黑白小方块,若二维码为训练二维码,则标识为白色,否则为黑色。这样训练二维码嵌入的数据由训练二维码携带的辅助识别信息生成,无需通过数据小方块颜色识别。
(3)参考颜色:为了降低不同摄像头拍摄到的二维码之间的颜色差异影响,加入参考颜色。实施例中参考颜色是最左右两侧的边框,这两个竖条将二维码预定义的颜色集循环地排布出来。
(4)果冻效应标识:为了解决拍摄到的二维码颜色相互重叠的问题,加入果冻效应标识信息。实施例中果冻效应标识位于左右两侧边框内,即左边框、左果冻效应标识、内容、右果冻效应标识、右边框。每个果冻效应标识由两个纯色的相邻竖条组成,颜色为纯白色或纯黑色,且偶数二维码的果冻效应标识颜色从左到右依次为“黑、白、黑、白”,奇数二维码依次为“白、黑、白、黑”。这样排布的目的是在拍摄到的二维码中指示果冻效应的效果。
训练二维码在发送原始二维码之前发送,以在传输过程中尽快构建机器学习模型。原始二维码在训练二维码发送完后随即发送。
步骤S30,接收方拍摄到发送的二维码,识别训练二维码并生成其数据。
具体而言,包括:
步骤S31,识别训练二维码标识,判断是否为训练二维码,即判断标识颜色为黑色还是白色。
步骤S32,识别二维码序号,以此序号为随机数种子,生成伪随机数据。识别二维码序号是指对格雷码进行解码,由于相邻序号二进制格雷码仅有一位数字不一样,所以即使出现前后二维码颜色重叠,也只需要确定唯一颜色重叠小方块为黑色还是白色。
步骤S40,接收方提取训练二维码和原始二维码小方块颜色信息。
小方块的颜色信息不仅包括小方块本身的颜色,还包括辅助识别信息等,颜色信息包括:
小方块颜色:以原系统的规定对小方块颜色采样。
参考颜色:参考颜色竖条中,每种预定义颜色的平均值。
果冻效应标识:因整行像素同一时刻采样,故取与小方块中心点同一水平线上果冻效应标识条的颜色作为果冻效应标识。
相邻小方块颜色:即与此小方块相邻的8个小方块的颜色。提取相邻小方块颜色,是为了解决同一拍摄到的二维码中小方块受相邻小方块颜色影响的问题。
步骤S50,建立机器学习模型并预测小方块颜色和数据。
具体而言,包括:
步骤S51,以训练二维码小方块颜色信息为特征,以其数据为标签,构建分类器模型。实施例中使用的分类器是“随机森林”分类器。
步骤S52,以多个分类器模型和训练二维码构建混合专家模型。实施例中以5个分类器模型和20个训练二维码进行构建。
建立混合专家模型的目的是减少训练二维码数目,并提高小方块颜色识别准确度。混合专家模型是以以往多次传输过程中建立的分类器模型为基础,以本次传输过程中的训练二维码为样本,建立的混合专家模型。构建方式如下:
记预建的分类器(又称专家)为y1,y2,…,ym,记训练集为x1,x2,…,xn,对应的标签为t1,t2,…,tn。对于每个yi,定义其权重gi
混合专家的输出可以表示为多个专家的加权和,即:
定义目标函数:
为使目标函数最小化,使用梯度下降的方法来获得E最小时的权值;确定了每个专家的权值后,得到每个输入x的分类结果y(x)。
步骤S53,以混合专家模型预测原始二维码中小方块的颜色。
对于每个小方块,以其颜色信息作为输入,交由5个分类器模型(专家)分别输出其分类结果,以其加权和作为最终分类结果,即识别出的小方块颜色。
将识别完成的小方块颜色交由原系统继续处理,最终恢复出原始数据。
基于与方法实施例相同的技术构思,根据本发明的另一实施例,提供一种计算机设备,所述设备包括:一个或多个处理器;存储器;以及一个或多个程序,其中所述一个或多个程序被存储在所述存储器中,并且被配置为由所述一个或多个处理器执行,所述程序被处理器执行时实现方法实施例中的各步骤。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
最后应当说明的是:以上实施例仅用以说明本发明的技术方案而非对其限制,尽管参照上述实施例对本发明进行了详细的说明,所属领域的普通技术人员应当理解:依然可以对本发明的具体实施方式进行修改或者等同替换,而未脱离本发明精神和范围的任何修改或者等同替换,其均应涵盖在本发明的权利要求保护范围之内。

Claims (6)

1.一种基于机器学习的动态二维码识别方法,应用于动态二维码传输系统中,其特征在于,所述方法包括以下步骤:
S10、发送方生成训练二维码;
S20、发送方在训练二维码和原始二维码周围添加辅助识别信息后将其发送;
S30、接收方从拍摄到的二维码中识别出训练二维码,并生成这个训练二维码中嵌入的数据作为机器学习标签;
S40、接收方从拍摄到的二维码中提取小方块的颜色信息,作为机器学习特征;
S50、接收方由标签和特征建立机器学习模型,包括:
a)由标签和特征,建立分类器模型;
b)由多个分类器模型,建立混合专家模型;
S60、接收方将建立的机器学习模型应用到拍摄到的原始二维码中,预测出每个小方块的颜色。
2.根据权利要求1所述的基于机器学习的动态二维码识别方法,其特征在于,所述步骤S10中生成训练二维码的方式如下:为每个训练二维码赋一个序号,以该序号作为随机数种子,生成伪随机的数据,嵌入到训练二维码中。
3.根据权利要求1所述的基于机器学习的动态二维码识别方法,其特征在于,所述步骤S20中辅助识别信息为二维码四周新增边框,包括:
(1)训练二维码序号:从0开始顺序增加,对训练二维码进行格雷码编码,以二进制形式嵌入到上边框;原始二维码不添加此信息;
(2)训练二维码标识:下边框的一个黑白小方块,若二维码为训练二维码,则标识为白色,否则为黑色;
(3)参考颜色:左右两侧的边框,这两个竖条将二维码预定义的颜色集循环地排布出来;
(4)果冻效应标识:位于左右两侧边框内侧,每个果冻效应标识由两个纯色的相邻竖条组成,颜色为纯白色或纯黑色,且偶数二维码的果冻效应标识颜色从左到右依次为黑、白、黑、白,奇数二维码依次为白、黑、白、黑。
4.根据权利要求3所述的基于机器学习的动态二维码识别方法,其特征在于,所述步骤S40中小方块的颜色信息包括:
小方块颜色:以原系统的规定对小方块颜色采样;
参考颜色:参考颜色竖条中,每种预定义颜色的平均值;
果冻效应标识:取与小方块中心点同一水平线上果冻效应标识条的颜色作为果冻效应标识;
相邻小方块颜色:与此小方块相邻的8个小方块的颜色。
5.根据权利要求1所述的基于机器学习的动态二维码识别方法,其特征在于,所述步骤S50中混合专家模型的构建方法如下:
记预建的分类器为y1,y2,…,ym,记训练集为x1,x2,…,xn,对应的标签为t1,t2,…,tn,对于每个yi,定义其权重gi
将混合专家的输出表示为多个专家的加权和,即:
定义目标函数:
为使目标函数最小化,使用梯度下降的方法来获得E最小时的权值,每个专家的权值确定后,得到每个输入x的分类结果y(x)。
6.一种计算机设备,其特征在于,所述设备包括:
一个或多个处理器;
存储器;以及
一个或多个程序,其中所述一个或多个程序被存储在所述存储器中,并且被配置为由所述一个或多个处理器执行,所述程序被处理器执行时实现如权利要求1-5中的任一项所述的步骤。
CN201910403227.3A 2019-05-15 2019-05-15 一种基于机器学习的动态二维码识别方法和设备 Pending CN110110805A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910403227.3A CN110110805A (zh) 2019-05-15 2019-05-15 一种基于机器学习的动态二维码识别方法和设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910403227.3A CN110110805A (zh) 2019-05-15 2019-05-15 一种基于机器学习的动态二维码识别方法和设备

Publications (1)

Publication Number Publication Date
CN110110805A true CN110110805A (zh) 2019-08-09

Family

ID=67490240

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910403227.3A Pending CN110110805A (zh) 2019-05-15 2019-05-15 一种基于机器学习的动态二维码识别方法和设备

Country Status (1)

Country Link
CN (1) CN110110805A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111160501A (zh) * 2019-12-25 2020-05-15 北京亮亮视野科技有限公司 一种二维码训练数据集的构建方法及装置
CN117411615A (zh) * 2023-12-13 2024-01-16 广州市信亦达电子科技有限公司 一种基于随机数的二维码防伪加密方法及系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150332479A1 (en) * 2012-02-07 2015-11-19 Zencolor Corporation System for normalizing, codifying and categorizing color-based product and data based on a univerisal digital color language
CN108388822A (zh) * 2018-01-25 2018-08-10 微梦创科网络科技(中国)有限公司 一种检测二维码图像的方法和装置
CN109492772A (zh) * 2018-11-28 2019-03-19 北京百度网讯科技有限公司 生成信息的方法和装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150332479A1 (en) * 2012-02-07 2015-11-19 Zencolor Corporation System for normalizing, codifying and categorizing color-based product and data based on a univerisal digital color language
CN108388822A (zh) * 2018-01-25 2018-08-10 微梦创科网络科技(中国)有限公司 一种检测二维码图像的方法和装置
CN109492772A (zh) * 2018-11-28 2019-03-19 北京百度网讯科技有限公司 生成信息的方法和装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
詹同: "基于动态二维码的屏幕摄像头通信系统的设计与实现", 《中国优秀硕士学位论文全文数据库信息科技辑》 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111160501A (zh) * 2019-12-25 2020-05-15 北京亮亮视野科技有限公司 一种二维码训练数据集的构建方法及装置
CN117411615A (zh) * 2023-12-13 2024-01-16 广州市信亦达电子科技有限公司 一种基于随机数的二维码防伪加密方法及系统
CN117411615B (zh) * 2023-12-13 2024-04-02 广州市信亦达电子科技有限公司 一种基于随机数的二维码防伪加密方法及系统

Similar Documents

Publication Publication Date Title
CN111292264B (zh) 一种基于深度学习的图像高动态范围重建方法
CN110119757A (zh) 模型训练方法、视频类别检测方法、装置、电子设备和计算机可读介质
CN110136154A (zh) 基于全卷积网络与形态学处理的遥感图像语义分割方法
CN108182657A (zh) 一种基于循环生成对抗网络的面部图像转换方法
CN110059698A (zh) 用于街景理解的基于边缘稠密重建的语义分割方法及系统
CN110070091A (zh) 用于街景理解的基于动态插值重建的语义分割方法及系统
WO2023083280A1 (zh) 一种场景文本识别方法和装置
CN110633748A (zh) 一种鲁棒的自动人脸融合方法
CN112070114B (zh) 基于高斯约束注意力机制网络的场景文字识别方法及系统
CN108389239A (zh) 一种基于条件多模式网络的微笑脸部视频生成方法
CN104751485B (zh) 一种基于gpu自适应的前景提取方法
CN115565238B (zh) 换脸模型的训练方法、装置、设备、存储介质和程序产品
CN110399760A (zh) 一种批量二维码定位方法、装置、电子设备及存储介质
CN116738911B (zh) 布线拥塞预测方法、装置及计算机设备
CN110059769A (zh) 用于街景理解的基于像素重排重建的语义分割方法及系统
CN113344794B (zh) 一种图像处理方法、装置、计算机设备及存储介质
CN110110805A (zh) 一种基于机器学习的动态二维码识别方法和设备
CN112102424A (zh) 车牌图像生成模型构建方法、生成方法及装置
CN113553954A (zh) 行为识别模型的训练方法及装置、设备、介质和程序产品
CN112884758A (zh) 一种基于风格迁移方法的缺陷绝缘子样本生成方法及系统
CN110097615B (zh) 一种联合风格化和去风格化的艺术字编辑方法和系统
CN109902751A (zh) 一种融合卷积神经网络和半字模板匹配的表盘数字字符识别方法
CN109214486B (zh) 三维码、三维码的生成方法和装置、识别方法和装置
CN117094895A (zh) 图像全景拼接方法及其系统
CN115019218B (zh) 图像处理方法和处理器

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20190809

RJ01 Rejection of invention patent application after publication