CN110674663A - 一种小程序码的识别方法及系统 - Google Patents
一种小程序码的识别方法及系统 Download PDFInfo
- Publication number
- CN110674663A CN110674663A CN201910976210.7A CN201910976210A CN110674663A CN 110674663 A CN110674663 A CN 110674663A CN 201910976210 A CN201910976210 A CN 201910976210A CN 110674663 A CN110674663 A CN 110674663A
- Authority
- CN
- China
- Prior art keywords
- position information
- code
- small program
- program code
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K7/00—Methods or arrangements for sensing record carriers, e.g. for reading patterns
- G06K7/10—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
- G06K7/14—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation using light without selection of wavelength, e.g. sensing reflected white light
- G06K7/1404—Methods for optical code recognition
- G06K7/1439—Methods for optical code recognition including a method step for retrieval of the optical code
- G06K7/1443—Methods for optical code recognition including a method step for retrieval of the optical code locating of the code in an image
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K7/00—Methods or arrangements for sensing record carriers, e.g. for reading patterns
- G06K7/10—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
- G06K7/14—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation using light without selection of wavelength, e.g. sensing reflected white light
- G06K7/1404—Methods for optical code recognition
- G06K7/146—Methods for optical code recognition the method including quality enhancement steps
- G06K7/1482—Methods for optical code recognition the method including quality enhancement steps using fuzzy logic or natural solvers, such as neural networks, genetic algorithms and simulated annealing
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Toxicology (AREA)
- General Health & Medical Sciences (AREA)
- Electromagnetism (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Software Systems (AREA)
- Quality & Reliability (AREA)
- Mathematical Physics (AREA)
- Fuzzy Systems (AREA)
- Evolutionary Computation (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Automation & Control Theory (AREA)
- Life Sciences & Earth Sciences (AREA)
- Image Analysis (AREA)
Abstract
本发明涉及一种小程序码的识别方法及系统,该方法包括有采用深度学习算法获取微信小程序码的粗略的位置信息,然后在获取的微信小程序码的粗略的位置区域内确定三个定位点,并利用该三个定位点确定三个定位点、定位logo、微信小程序码的圆心和半径信息,作为微信小程序码的精准的位置信息。这样,即可在不解码的基础上快速、精准识别出微信小程序码的位置信息,识别速度极快,有效提高生产效率。
Description
技术领域
本发明属于识别技术领域,特别涉及一种小程序码的识别方法及系统。
背景技术
目前,市场上的微信小程序码都依托于微信平台,在很多场景得到广泛应用。但申请人发现:由于小程序码标准不公开,只能使用微信客户端解码,给小程序码的使用者造成困扰。例如,在海报模板管理系统中,部分用户上传的海报图像包含小程序码。为此常规的方法是,人工找到小程序码位置信息,作为模板属性存入数据库中。当其他用户使用该模板时,将新的小程序码渲染到该位置上。类似的场景,迫切需要一种自动化的识别小程序码的工具。
发明内容
为解决现有技术中存在的上述问题,本发明提供了一种在不解码的基础上快速、精准识别出微信小程序码的位置信息,识别速度快,有效提高生产效率的小程序码的识别方法及识别系统。
为解决上述技术问题,本发明采用如下技术方案:
一种小程序码的识别方法,包括以下步骤:
获取微信小程序码的粗略的位置信息——采用深度学习算法进行识别、获取包含微信小程序码的矩形框的位置信息,作为微信小程序码的粗略的位置信息;
提取微信小程序码的精准的位置信息——利用霍夫变换算法在获取的微信小程序码的粗略的位置区域内确定三个定位点,并利用该三个定位点确定三个定位点、定位logo、微信小程序码的圆心和半径信息,作为微信小程序码的精准的位置信息。
进一步地,所述提取微信小程序码的精准的位置信息,具体为:
1)利用霍夫变换算法在获取的微信小程序码的粗略的位置区域内找到潜在的圆;
2)根据定位点的圆环特征,找到潜在的三个定位点;
3)利用三个定位点之间构成等腰直角三角形的特性,获取初步满足该特性的候选组合;
4)利用三个定位点与定位logo的关系,找到定位logo的圆心及半径范围;
5)将待识别的图像转为轮廓图,并使用模式匹配方法来判断定位logo是否合法;若定位logo合法,则三个定位点及对应的定位logo就是潜在的微信小程序码定位点;
6)利用三个定位点找到微信小程序码圆心,找到包围整个微信小程序码的最小半径作为微信小程序码半径;
7)当微信小程序码的点、线都落在从微信小程序码圆心出发的放射性射线上时,确定找到的微信小程序码合法,并将微信小程序码圆心及半径、三个定位点的圆心及半径、定位logo的圆心及半径信息作为微信小程序码的精准位置信息。
进一步地,在获取微信小程序码的粗略的位置信息时采用深度学习算法中的物体识别算法进行识别、获取包含微信小程序码的矩形框的位置信息。
进一步地,在获取微信小程序码的粗略的位置信息之前,先使用标注图像训练深度学习模型,所述标注图像是一批标注小程序码位置信息的图片,并划分为训练集、测试集及验证集。
进一步地,所述标注图像是灰度图。
一种小程序码的识别系统,包括:
图像获取模块,用于获取待识别图像;
深度学习检测模块,用于利用深度学习算法识别小程序的粗略的位置信息;
确定模块,用于确定小程序码的精准的位置信息。
进一步地,所述深度学习检测模块包括深度学习训练子模块和深度学习预测子模块;其中,所述深度学习训练子模块用于使用训练集中标注小程序码位置信息的图片离线训练深度学习模型并使用测试集、验证集优化深度学习模型超参数,所述深度学习预测子模块用于使用训练好的深度学习模型对待识别的图像进行小程序码检测,返回粗略位置信息。
进一步地,所述确定模块包含定位点识别子模块、logo识别子模块、小程序码识别子模块;其中,所述定位点识别子模块用于在微信小程序码的粗略的位置区域内识别出微信小程序码的三个定位点位置信息;所述logo识别子模块用于识别出定位用的logo的位置信息;所述小程序码识别子模块用于找到小程序码的圆心及半径,并根据小程序码点、线是否都落在从小程序码圆心出发的放射性射线上最终验证小程序码的位置信息是否正确。
本发明的主要具有以下有益效果:
本发明通过上述技术方案,即可在不解码的基础上快速、精准识别出微信小程序码的位置信息,识别速度极快,有效提高生产效率。
附图说明
图1是本发明所述一种小程序码的识别方法实施例的流程示意图;
图2是本发明所述一种小程序码的识别系统实施例的结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
如图1中所示:
本发明实施例所述的一种小程序码的识别方法,包括以下步骤:
步骤S1.获取微信小程序码的粗略的位置信息——采用深度学习算法进行识别、获取包含微信小程序码的矩形框的位置信息,作为微信小程序码的粗略的位置信息;
步骤S2.提取微信小程序码的精准的位置信息——利用霍夫变换算法在获取的微信小程序码的粗略的位置区域内确定三个定位点,并利用该三个定位点确定三个定位点、定位logo、微信小程序码的圆心和半径信息,作为微信小程序码的精准的位置信息。
其中,在获取微信小程序码的粗略的位置信息时采用深度学习算法中的物体识别算法(包括faster-rcnn、SSD、yolo等算法)进行识别、获取包含微信小程序码的矩形框的位置信息。
所述提取微信小程序码的精准的位置信息,具体可以包括以下步骤:
1)利用霍夫变换算法在获取的微信小程序码的粗略的位置区域内找到潜在的圆;
2)根据定位点的圆环特征,找到潜在的三个定位点;
3)利用三个定位点之间构成等腰直角三角形的特性,获取初步满足该特性的候选组合;
4)利用三个定位点与定位logo的关系(即:定位logo的圆心与三个定位点大致构成一个正方形,该正方形的中心和三个定位点构成的等腰直角三角形底边的中点重合),找到定位logo的圆心及半径范围;
5)将待识别的图像(该图像可能包含微信小程序码)转为轮廓图,并使用模式匹配方法来判断定位logo是否合法;若定位logo合法,则三个定位点及对应的定位logo就是潜在的微信小程序码定位点;
6)利用三个定位点找到微信小程序码圆心,找到包围整个微信小程序码的最小半径作为微信小程序码半径;
7)当微信小程序码的点、线都落在从微信小程序码圆心出发的放射性射线上时,确定找到的微信小程序码合法,并将微信小程序码圆心及半径、三个定位点的圆心及半径、定位logo的圆心及半径信息作为微信小程序码的精准位置信息。
在执行步骤S1.获取微信小程序码的粗略的位置信息之前,先使用标注图像训练深度学习模型,所述标注图像是一批标注小程序码位置信息的图片,并划分为训练集、测试集及验证集。
这样,通过本发明所述小程序码的识别方法即可在不解码的基础上快速、精准识别出微信小程序码的位置信息,识别速度极快,有效提高生产效率。
此外,所述图像可以是灰度图(即:单通道图片),作为深度学习模型的输入,便可以进一步节省计算资源,加速训练、预测。
如图2中所示:
本发明实施例所述一种小程序码的识别系统,包括图像获取模块100、深度学习检测模块200和确定模块300;其中,
所述图像获取模块100,用于获取待识别图像;
所述深度学习检测模块200,用于利用深度学习算法识别小程序的粗略的位置信息;具体地,所述深度学习检测模块包括深度学习训练子模块和深度学习预测子模块;其中,所述深度学习训练子模块用于使用训练集中标注小程序码位置信息的图片离线训练深度学习模型并使用测试集、验证集优化深度学习模型超参数,所述深度学习预测子模块用于使用训练好的深度学习模型对待识别的图像进行小程序码检测,返回粗略位置信息。
所述确定模块300,用于确定小程序码的精准的位置信息;具体地,所述确定模块包含定位点识别子模块、logo识别子模块、小程序码识别子模块;其中,所述定位点识别子模块用于在微信小程序码的粗略的位置区域内识别出微信小程序码的三个定位点位置信息;所述logo识别子模块用于识别出定位用的logo的位置信息;所述小程序码识别子模块用于找到小程序码的圆心及半径,并根据小程序码点、线是否都落在从小程序码圆心出发的放射性射线上最终验证小程序码的位置信息是否正确。
通过本发明所述小程序码的识别系统即可完成上述识别方法,在不解码的基础上快速、精准识别出微信小程序码的位置信息,识别速度极快,有效提高生产效率。
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围。
Claims (8)
1.一种小程序码的识别方法,其特征在于,包括以下步骤:
获取微信小程序码的粗略的位置信息——采用深度学习算法进行识别、获取包含微信小程序码的矩形框的位置信息,作为微信小程序码的粗略的位置信息;
提取微信小程序码的精准的位置信息——利用霍夫变换算法在获取的微信小程序码的粗略的位置区域内确定三个定位点,并利用该三个定位点确定三个定位点、定位logo、微信小程序码的圆心和半径信息,作为微信小程序码的精准的位置信息。
2.根据权利要求1所述的小程序码的识别方法,其特征在于,所述提取微信小程序码的精准的位置信息,具体为:
1)利用霍夫变换算法在获取的微信小程序码的粗略的位置区域内找到潜在的圆;
2)根据定位点的圆环特征,找到潜在的三个定位点;
3)利用三个定位点之间构成等腰直角三角形的特性,获取初步满足该特性的候选组合;
4)利用三个定位点与定位logo的关系,找到定位logo的圆心及半径范围;
5)将待识别的图像转为轮廓图,并使用模式匹配方法来判断定位logo是否合法;若定位logo合法,则三个定位点及对应的定位logo就是潜在的微信小程序码定位点;
6)利用三个定位点找到微信小程序码圆心,找到包围整个微信小程序码的最小半径作为微信小程序码半径;
7)当微信小程序码的点、线都落在从微信小程序码圆心出发的放射性射线上时,确定找到的微信小程序码合法,并将微信小程序码圆心及半径、三个定位点的圆心及半径、定位logo的圆心及半径信息作为微信小程序码的精准位置信息。
3.根据权利要求1或2所述的小程序码的识别方法,其特征在于,在获取微信小程序码的粗略的位置信息时采用深度学习算法中的物体识别算法进行识别、获取包含微信小程序码的矩形框的位置信息。
4.根据权利要求1或2所述的小程序码的识别方法,其特征在于,在获取微信小程序码的粗略的位置信息之前,先使用标注图像训练深度学习模型,所述标注图像是一批标注小程序码位置信息的图片,并划分为训练集、测试集及验证集。
5.根据权利要求4所述的小程序码的识别方法,其特征在于,所述标注图像是灰度图。
6.一种小程序码的识别系统,其特征在于,包括:
图像获取模块,用于获取待识别图像;
深度学习检测模块,用于利用深度学习算法识别小程序的粗略的位置信息;
确定模块,用于确定小程序码的精准的位置信息。
7.根据权利要求6所述的小程序码的识别系统,其特征在于,所述深度学习检测模块包括深度学习训练子模块和深度学习预测子模块;其中,所述深度学习训练子模块用于使用训练集中标注小程序码位置信息的图片离线训练深度学习模型并使用测试集、验证集优化深度学习模型超参数,所述深度学习预测子模块用于使用训练好的深度学习模型对待识别的图像进行小程序码检测,返回粗略位置信息。
8.根据权利要求6所述的小程序码的识别系统,其特征在于,所述确定模块包含定位点识别子模块、logo识别子模块、小程序码识别子模块;其中,所述定位点识别子模块用于在微信小程序码的粗略的位置区域内识别出微信小程序码的三个定位点位置信息;所述logo识别子模块用于识别出定位用的logo的位置信息;所述小程序码识别子模块用于找到小程序码的圆心及半径,并根据小程序码点、线是否都落在从小程序码圆心出发的放射性射线上最终验证小程序码的位置信息是否正确。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910976210.7A CN110674663B (zh) | 2019-10-15 | 2019-10-15 | 一种小程序码的识别方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910976210.7A CN110674663B (zh) | 2019-10-15 | 2019-10-15 | 一种小程序码的识别方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110674663A true CN110674663A (zh) | 2020-01-10 |
CN110674663B CN110674663B (zh) | 2023-05-26 |
Family
ID=69082482
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910976210.7A Active CN110674663B (zh) | 2019-10-15 | 2019-10-15 | 一种小程序码的识别方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110674663B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101751591A (zh) * | 2010-01-14 | 2010-06-23 | 复旦大学 | 可记录语音信息的大容量二维条码及阅读器 |
CN109871724A (zh) * | 2019-02-20 | 2019-06-11 | 连尚(新昌)网络科技有限公司 | 一种用于识别二维码的方法与设备 |
-
2019
- 2019-10-15 CN CN201910976210.7A patent/CN110674663B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101751591A (zh) * | 2010-01-14 | 2010-06-23 | 复旦大学 | 可记录语音信息的大容量二维条码及阅读器 |
CN109871724A (zh) * | 2019-02-20 | 2019-06-11 | 连尚(新昌)网络科技有限公司 | 一种用于识别二维码的方法与设备 |
Also Published As
Publication number | Publication date |
---|---|
CN110674663B (zh) | 2023-05-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110827247B (zh) | 一种识别标签的方法及设备 | |
WO2021051885A1 (zh) | 目标标注的方法及装置 | |
Dibeklioglu et al. | 3D facial landmarking under expression, pose, and occlusion variations | |
CN110569856B (zh) | 样本标注方法及装置、损伤类别的识别方法及装置 | |
CN106874901B (zh) | 一种行驶证识别方法及装置 | |
CN111639629B (zh) | 一种基于图像处理的猪只体重测量方法、装置及存储介质 | |
CN111461243B (zh) | 分类方法、装置、电子设备及计算机可读存储介质 | |
CN109285181B (zh) | 用于识别图像的方法和装置 | |
CN114359553B (zh) | 一种基于物联网的签章定位方法、系统及存储介质 | |
CN111126393A (zh) | 车辆外观改装判断方法、装置、计算机设备及存储介质 | |
CN110928971A (zh) | 一种提高地址识别精确度的方法及装置 | |
CN113657274A (zh) | 表格生成方法、装置、电子设备、存储介质及产品 | |
CN111190595A (zh) | 基于界面设计图自动生成界面代码的方法、装置、介质及电子设备 | |
CN110291527B (zh) | 信息处理方法、系统、云处理设备以及计算机程序产品 | |
CN112613367A (zh) | 票据信息文本框获取方法、系统、设备及存储介质 | |
KR102008630B1 (ko) | 이미지 인식률 증대 장치 및 방법 | |
CN110674663A (zh) | 一种小程序码的识别方法及系统 | |
CN111339919A (zh) | 一种基于多任务协作的镜子检测方法 | |
CN114387600A (zh) | 文本特征识别方法、装置、计算机设备和存储介质 | |
CN114926817A (zh) | 识别车位的方法、装置、电子设备和计算机可读存储介质 | |
CN114092542A (zh) | 一种基于二维视觉的螺栓测量方法以及系统 | |
CN112287763A (zh) | 图像处理方法、装置、设备及介质 | |
KR20090123523A (ko) | 광학 문자 인식 시스템 및 방법 | |
CN110826568A (zh) | 基于路标的室内定位方法、装置和电子设备 | |
CN111221995B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |