CN112749769A - 图形码检测方法、装置、计算机设备及存储介质 - Google Patents

图形码检测方法、装置、计算机设备及存储介质 Download PDF

Info

Publication number
CN112749769A
CN112749769A CN202010838466.4A CN202010838466A CN112749769A CN 112749769 A CN112749769 A CN 112749769A CN 202010838466 A CN202010838466 A CN 202010838466A CN 112749769 A CN112749769 A CN 112749769A
Authority
CN
China
Prior art keywords
graphic code
graphic
image
detection result
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
Application number
CN202010838466.4A
Other languages
English (en)
Other versions
CN112749769B (zh
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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202010838466.4A priority Critical patent/CN112749769B/zh
Publication of CN112749769A publication Critical patent/CN112749769A/zh
Application granted granted Critical
Publication of CN112749769B publication Critical patent/CN112749769B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • User Interface Of Digital Computer (AREA)
  • Image Analysis (AREA)

Abstract

本申请实施例提供了一种图形码检测方法、装置、计算机设备及存储介质,其中方法包括:响应扫码指令调用摄像头获取第一图像,并对第一图像中的目标图像区域进行图形码分析检测,得到N个图形码图像区域;对N个图形码图像区域进行图形码识别检测,得到包括M个有效图形码的相关信息的第一图形码检测结果;若M小于N,则获取与第一图像在时序上相邻的第二图像,并根据参考图像位置对第二图像进行图形码识别检测,得到第二图形码检测结果;根据第二图形码检测结果以及第一图形码检测结果确定目标图形码检测结果。通过本申请实施例可以结合相邻图像进行图形码识别检测,这不仅可以提高图形码检测结果的准确性,还有利于提高图形码的解码成功率。

Description

图形码检测方法、装置、计算机设备及存储介质
技术领域
本申请涉及智能识别技术领域,尤其涉及一种图形码检测方法、一种图形码检测装置、一种计算机设备及一种计算机可读存储介质。
背景技术
随着社会的进步以及科学技术的发展,人们通过智能终端(例如智能手机、平板电脑等)扫描图形码以获取信息数据的方式已被广泛应用于生活中的各个方面,如:产品防伪溯源、网站链接、电子凭证、名片交流,等等。例如图形码中的二维码(Quick ResponseCode),又称二维条码,是指在一维条码的基础上扩展出另一维具有可读性的条码,使用黑白矩形图案表示二进制数据,被设备扫描后可获取其中所包含的信息数据。
目前,在进行图形码检测时,针对摄像头采集到的图像只对处于取景框(或者说扫码框,取景框尺寸远小于显示屏尺寸)中的图形码进行识别检测,当基于图形码在取景框中所展示的内容无法成功解码时,直接提示识别失败,不会进行其他的识别处理,这会导致图形码检测结果的准确性低,进而降低图形码的解码成功率。
发明内容
本申请实施例提供了一种图形码检测方法、装置、计算机设备及存储介质,可以结合相邻图像进行图形码识别检测,这不仅可以提高图形码检测结果的准确性,还有利于提高图形码的解码成功率。
一方面,本申请实施例提供了一种图形码检测方法,所述方法包括:
响应扫码指令调用摄像头获取第一图像,并对所述第一图像中的目标图像区域进行图形码分析检测,得到N个图形码图像区域;
对所述N个图形码图像区域进行图形码识别检测,得到第一图形码检测结果,第一图形码检测结果包括M个有效图形码和K个无效图形码的相关信息;
若根据所述第一图形码检测结果确定所述M小于所述N,则获取所述摄像头采集到的与所述第一图像在时序上相邻的第二图像,并根据参考图像位置对所述第二图像进行图形码识别检测,得到第二图形码检测结果;
根据所述第二图形码检测结果以及所述第一图形码检测结果确定目标图形码检测结果;
其中,所述参考图像位置是根据所述N个图形码图像区域的位置确定的,或者是根据所述K个无效图形码所对应的图形码图像区域的位置确定的,所述N、M和K为非负整数。
一方面,本申请实施例提供了一种图形码检测装置,所述装置包括:
获取单元,用于响应扫码指令调用摄像头获取第一图像;
处理单元,用于对所述第一图像中的目标图像区域进行图形码分析检测,得到N个图形码图像区域;
所述处理单元,用于对所述N个图形码图像区域进行图形码识别检测,得到第一图形码检测结果,第一图形码检测结果包括M个有效图形码和K个无效图形码的相关信息;
所述处理单元,还用于若根据所述第一图形码检测结果确定所述M小于所述N,则触发所述获取单元获取所述摄像头采集到的与所述第一图像在时序上相邻的第二图像,并根据参考图像位置对所述第二图像进行图形码识别检测,得到第二图形码检测结果;根据所述第二图形码检测结果以及所述第一图形码检测结果确定目标图形码检测结果;
其中,所述参考图像位置是根据所述N个图形码图像区域的位置确定的,或者是根据所述K个无效图形码所对应的图形码图像区域的位置确定的,所述N、M和K为非负整数。
在一实施例中,所述目标图形码检测结果包括X个图形码的有效信息和位置信息,所述有效信息包括图形码的有效特征信息;
所述处理单元,还用于根据所述X个图形码的有效特征信息从所述X个图形码中确定待选择图形码,所述X为非负整数;
所述装置还包括显示单元,用于当所述待选择图形码为至少两个时,根据至少两个待选择图形码的位置信息,在每一个待选择图形码的显示位置处显示与待选择图形码关联的跳转按钮;
所述处理单元,还用于在检测到用户针对显示的多个跳转按钮的选择操作时,触发所述显示单元跳转至与所述选择操作所选中的跳转按钮关联的待选择图形码所对应的内容显示页面。
在一实施例中,所述显示单元,还用于在信息显示区域显示所述每一个待选择图形码的摘要信息,所述摘要信息包括:图形码的类型、图形码的标识、图形码的有效时间、图形码所对应的链接信息中的一种或者多种。
在一实施例中,所述处理单元,具体用于:
根据所述X个图形码的有效特征信息确定所述X个图形码中每一个图形码的图形码类型;根据所述每一个图形码的图形码类型以及响应所述扫码指令的扫码应用程序所支持的图形码类型,从所述X个图形码中确定所述扫码应用程序所支持的图形码;检测所述扫码应用程序所支持的图形码中是否存在异常图形码;将所述扫码应用程序所支持的图形码中除所述异常图形码之外的图形码确定为待选择图形码。
在一实施例中,所述处理单元,具体用于:
根据参考图像位置对所述第二图像进行图形码分析检测,确定所述第二图像中与所述参考图像位置匹配的Y个图形码图像区域,所述Y为非负整数;对所述Y个图形码图像区域进行图形码识别检测,得到第二图形码检测结果。
在一实施例中,所述第二图像是从相邻图像序列中选择的一张图像,所述相邻图像序列中的图像与所述第一图像在时序上相邻;所述处理单元,具体用于:
根据所述第二图形码检测结果以及所述第一图形码检测结果确定参考图形码检测结果;当所述参考图形码检测结果包括少于N个图形码的有效信息时,从所述相邻图像序列中重新选择一张图像作为新的第二图像,并根据所述参考图像位置对所述新的第二图像进行图形码识别检测,得到新的第二图形码检测结果;根据所述新的第二图形码检测结果确定新的参考图形码检测结果;当检测到满足检测停止条件时,将所述新的参考图形码检测结果确定为目标图形码检测结果。
在一实施例中,所述处理单元,具体用于:
根据所述新的第二图形码检测结果以及所述第一图形码检测结果重新确定参考图形码检测结果;或者,
根据所述新的第二图形码检测结果对所述参考图形码检测结果进行更新,得到更新后的参考图形码检测结果。
在一实施例中,所示满足检测停止条件是指:新的参考图形码检测结果包括N个图形码的有效信息,或者,第二图像的选取次数大于或等于目标数值。
一方面,本申请实施例提供了一种计算机设备,包括:处理器和存储器,所述存储器存储有可执行程序代码,所述处理器用于调用所述可执行程序代码,执行上述图形码检测方法。
相应的,本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述图形码检测方法。
相应的,本申请实施例还提供了一种计算机程序产品或计算机程序,所述计算机程序产品或计算机程序包括计算机指令,所述计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取所述计算机指令,处理器执行所述计算机指令,使得所述计算机设备执行上述图形码检测方法。
本申请实施例通过对第一图像中的目标图像区域进行图形码分析检测得到N个图形码图像区域,并对该N个图形码图像区域进行图形码识别检测,得到包括M个有效图形码的相关信息的第一图形码检测结果;若M小于N,则根据参考图像位置对与第一图像相邻的第二图像进行图形码识别检测,得到第二图形码检测结果;最后根据第二图形码检测结果以及第一图形码检测结果确定目标图形码检测结果,从而可以结合相邻图像进行图形码识别检测,这不仅可以提高图形码检测结果的准确性,还有利于提高图形码的解码成功率。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种图形码检测方法的应用场景图;
图2是本申请实施例提供的一种图形码检测方法的流程示意图;
图3示出了一种图形码图像以及一种显示界面;
图4a示出了另一种图形码图像以及一种选取与图3所示图形码图像区域相匹配的图形码图像区域的方式;
图4b示出了另一种选取与图3所示图形码图像区域相匹配的图形码图像区域的方式;
图5示出了图2所示图形码检测方法的后续流程;
图6是本申请实施例提供的一种显示界面的示意图;
图7a是本申请实施例提供的另一种显示界面的示意图;
图7b是本申请实施例提供的又一种显示界面的示意图;
图8是本申请实施例提供的一种扫码界面的示意图;
图9a是本申请实施例提供的一种图像帧处理方法的示意图;
图9b是本申请实施例提供的另一种图像帧处理方法的示意图;
图9c是本申请实施例提供的又一种图像帧处理方法的示意图;
图10是本申请实施例提供的另一种图形码检测方法的流程示意图;
图11是本申请实施例提供的一种图形码检测装置的结构示意图;
图12是本申请实施例提供的一种计算机设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
目前,在进行图形码检测时,针对摄像头采集到的图像只对处于取景框(或者说扫码框,取景框尺寸远小于显示屏尺寸)中的图形码进行识别检测,当基于图形码在取景框中所展示的内容无法成功解码时,直接提示识别失败,不会进行其他的识别处理,这会导致图形码检测结果的准确性低,进而降低图形码的解码成功率。
基于此,本申请实施例提供一种新的图形码检测方法,以结合相邻图像进行图形码识别检测,不仅可以提高图形码检测结果的准确性,还有利于提高图形码的解码成功率。如图1所示,示出了所述图形码检测方法的一种应用场景。计算机设备10上设置有摄像头11,摄像头11用于针对环境中的拍摄对象12进行拍摄,以采集图形码图像。计算机设备10获取摄像头11采集的图形码图像,并对该图形码图像中的至少部分图像区域进行图形码识别检测,以得到图形码检测结果。其中,计算机设备10可以是智能手机、平板电脑、笔记本电脑、智能手表、智能手环等具备拍摄以及扫码识别功能的智能终端。
以下对本申请实施例提供的图形码检测方法的具体实现方式进行详细介绍。本申请实施例中所描述的图形码检测方法由如图1所示的计算机设备执行。请参阅图2,为本申请实施例提供的一种图形码检测方法的流程示意图,所述方法包括但不限于如下步骤:
S201、响应扫码指令调用摄像头获取第一图像。
本申请实施例中,在检测到用户输入了扫码指令时,计算机设备调用其配置的摄像头对环境中的拍摄对象进行拍摄得到第一图像。在可行的实施方式中,当检测到用户在扫码应用程序中触发了扫码功能按钮(例如“扫一扫”功能按钮)时,确定检测到扫码指令。或者,在扫码应用程序运行的情况下,响应用户语音输入的扫码指令(例如语音输入“扫码”、“开启扫码功能”,等)调用摄像头获取第一图像。
在一实施例中,在检测到用户输入了扫码指令时,计算机设备调用其配置的摄像头对环境中的拍摄对象进行拍摄,得到环境图像集合,所述环境图像集合中包括多张图像,该多张图像是在同一较短时间段内采集得到的。计算机设备可以从该环境图像集合中随机选取一张图像作为第一图像,也可以按照预设的图像选取规则从该环境图像集合中选取一张图像作为第一图像。预设的图像选取规则可以是:将摄像头采集到的第一张、最后一张或者中间张图像作为第一图像,或者,将清晰度最高的一张图像作为第一图像,等等。
S202、对所述第一图像中的目标图像区域进行图形码分析检测,得到N个图形码图像区域。其中,所述N为非负整数(或者说自然数)。
本申请实施例中,目标图像区域可以是第一图像的全部图像区域,也可以是第一图像的部分图像区域。计算机设备获取摄像头采集到的第一图像,并在显示屏上显示该第一图像。通常摄像头采集到的图像的尺寸大于或等于显示屏所显示的图像的尺寸,故显示屏上显示的是第一图像的全部或者部分图像内容。在可行的实施方式中,计算机设备可以全屏显示该第一图像,即显示屏上显示的图像的尺寸与显示屏的尺寸相同。通过全屏显示该第一图像,可以使得图像识别区域尽可能大,这有利于获取完整的图像信息。或者,计算机设备也可以非全屏显示该第一图像,即显示屏上显示的图像的尺寸小于显示屏的尺寸,但为保证图像识别区域尽可能大,显示屏上显示的图像的尺寸应略小于显示屏的尺寸。计算机设备的显示屏上所显示的该第一图像的图像内容所对应的图像区域即为目标图像区域。如图3所示,301为摄像头采集到的第一图像,计算机设备在其显示屏上显示的第一图像的图像区域如302所示,则302所示的第一图像的图像区域即为目标图像区域。
在确定出第一图像中的目标图像区域之后,计算机设备对该目标图像区域进行图形码分析检测,从该目标图像区域中确定出N个图形码图像区域,图形码图像区域如图3中的31、32、33以及34所示。每一个图形码图像区域中可能包括有图形码,图形码图像区域中包括的图形码可以是完整的图形码,也可以是非完整的图形码(如只包含半个图形码);可以是完全符合图形码绘制规则(或者说包含信息数据)的图形码,也可以是不完全符合图形码绘制规则(或者说不包含信息数据)的图形码。图形码可以是条形码(BarCode)、机票码(PDF417)、自定义码(如小程序码,等)、二维码(QRCode)等中的任意一种。其中,图形码图像区域可以是只包括图形码的图像区域,也可以是尺寸略大于图形码所占区域的图像区域。
在可行的实施方式中,计算机设备可以采用深度学习的方法对该目标图像区域进行图形码分析检测,从而确定出N个图形码图像区域。具体地,计算机设备可以采用AI(人工智能)算法(如卷积神经网络)对该目标图像区域进行图形码分析检测。
本申请实施例中,当所述N大于或等于1时,执行步骤S203。当所述N等于0时,可以直接结束流程,也可以从摄像头采集到的图像中重新选择一张图像作为第一图像,并重新执行步骤S202。
S203、对所述N个图形码图像区域进行图形码识别检测,得到第一图形码检测结果,第一图形码检测结果包括M个有效图形码和K个无效图形码的相关信息。其中,所述M和K为非负整数。
本申请实施例中,计算机设备对所述N个图形码图像区域中的每一个图形码图像区域进行图形码识别检测,先提取每一个图形码图像区域中的图形码的相关信息,所述相关信息包括位置信息和特征信息;然后基于提取出的特征信息检测每一个图形码图像区域中的图形码是否为有效图形码,有效图形码是指基于当前特征信息能够成功解码的图形码,反之,基于当前特征信息不能够成功解码的图形码为无效图形码;能够成功解码的图形码的特征信息为有效特征信息,不能够成功解码的图形码的特征信息为无效特征信息。需要说明的是,图形码可能是由于展示的内容的特征信息不足于成功解码,或者图形码的绘制不符合图形码绘制规则,从而被识别为无效图形码。
针对每一个图形码图像区域识别检测完成之后,得到包括M个有效图形码的相关信息以及K个无效图形码的相关信息的第一图形码检测结果。有效图形码的相关信息包括:图形码标识(如编号)、用于指示图形码能够成功解码的有效标识(如字符1)、图形码的位置信息和有效特征信息。无效图形码的相关信息包括:图形码标识、用于指示图形码不能够成功解码的无效标识(如字符0)、图形码的位置信息和无效特征信息。其中,有效图形码的个数可以基于第一图形码检测结果中包括的有效标识的个数确定;同理,无效图形码的个数可以基于第一图形码检测结果中包括的无效标识的个数确定。图形码的位置信息可以是图形码在第一图像中的图像位置信息,可以用图形码对应的一个像素点(如中心像素点)或者多个像素点(如四个边界角像素点)的位置坐标表示图形码的图像位置。
在一实施例中,计算机设备对所述N个图形码图像区域中的每一个图形码图像区域进行图形码识别检测之前,先获取每一个图形码图像区域所对应的区域图像,并针对每一个图形码图像区域所对应的区域图像进行降噪处理。计算机设备然后针对每一个图形码图像区域所对应的降噪处理后的区域图像进行图形码识别检测。在可行的实施方式中,针对每一个图形码图像区域所对应的区域图像进行降噪处理包括:先将每一个图形码图像区域所对应的区域图像转换为灰度图像,然后针对每一个转换后的灰度图像采用二值化算法去除掉背景噪声。其中,二值化算法包括Hybird、FastWindow、SimpleAdative中的任意一种。计算机设备也可以先采用基于全局直方图的去噪方式进行初步去燥,然后采用二值化算法进行进一步去噪。这样可以有效提高去噪效果。
本申请实施例中,根据第一图形码检测结果确定有效图形码的个数M,当所述M大于或等于所述N时,表明基于第一图形码检测结果包括的图形码的有效特征信息,能够成功解码所述N个图形码图像区域中的每一个图形码图像区域中的图形码,此时可以将第一图形码检测结果作为最终目标图形码检测结果。当所述M小于所述N时,通过步骤S204至S206确定目标图形码检测结果。
S204、若根据所述第一图形码检测结果确定所述M小于所述N,则获取所述摄像头采集到的与所述第一图像在时序上相邻的第二图像。
本申请实施例中,第二图像是从相邻图像序列中选择的一张图像,该相邻图像序列中的图像均与第一图像在时序上相邻。在时序上与第一图像相邻可以是指采集时间与第一图像的采集时间相近,或者说是与第一图像在同一较短时间段内采集的。
其中,相邻图像序列可以是由在采集第一图像的过程中所采集到的环境图像集合中除所述第一图像之外的图像构成的。第二图像可以是从相邻图像序列中随机选择的一张图像,也可以是相邻图像序列中采集时间与第一图像最近的一张图像,例如第一图像的上一帧或者下一帧图像。由于摄像头在采集环境图像集合的过程中,摄像头的视角通常会有所变化,故该第二图像的图像内容与第一图像的图像内容通常会有所不同。
S205、根据参考图像位置对所述第二图像进行图形码识别检测,得到第二图形码检测结果。其中,所述参考图像位置是根据所述N个图形码图像区域的位置确定的,或者是根据所述K个无效图形码所对应的图形码图像区域的位置确定的。
本申请实施例中,计算机设备根据参考图像位置对第二图像进行图形码分析检测,确定第二图像(可以是指整张第二图像,也可以是指第二图像中的参考图像区域,如确定的与显示屏尺寸一致的图像区域)中与参考图像位置匹配的Y个图形码图像区域,所述Y为非负整数;对所述Y个图形码图像区域中的每一个图形码图像区域进行图形码识别检测,得到第二图形码检测结果。第二图形码检测结果包括A个有效图形码的相关信息以及B个无效图形码的相关信息。有效图形码的相关信息包括:图形码标识(如编号)、用于指示图形码能够成功解码的有效标识(如字符1)、图形码的位置信息和有效特征信息。无效图形码的相关信息包括:图形码标识、用于指示图形码不能够成功解码的无效标识(如字符0)、图形码的位置信息和无效特征信息。需要说明的是,图形码识别检测的具体方式可参考前文描述,此处不再赘述。
在一实施例中,将目标图像区域中的N个图形码图像区域的位置确定为参考图像位置,计算机设备基于物体跟踪算法确定第二图像中与参考图像位置(即所述N个图形码图像区域)匹配的Y个图形码图像区域。当第二图像中存在与所述N个图形码图像区域中每一个图形码图像区域相匹配的图形码图像区域时,所述Y等于所述N;反之,所述Y小于所述N。如图4a所示,图像401为与图3所所示第一图像301相邻的第二图像,图形码图像区域41、42、43和44分别与图3所示图形码图像区域31、32、33和34对应,例如图4a中的图形码图像区域44与图3所示图形码图像区域34对应同一图形码。进一步的,对第二图像中的所述Y个图形码图像区域进行图形码识别检测,得到第二图形码检测结果。
此情况下,第二图形码检测结果所指示的A个有效图形码中可能包括第一图形码检测结果所指示的有效图形码和/或无效图形码,第二图形码检测结果所指示的B个无效图形码中也可能包括第一图形码检测结果所指示的有效图形码和/或无效图形码。由于第二图像的图像内容与目标图像区域中的图像内容不完全相同,可能由于图形码在目标图像区域中展示出的部分内容不足以成功解码,则在第一图形码检测结果中其为无效码;而该图形码在第二图像中展示出的内容足以成功解码,则在第二图形码检测结果中其变为有效码。同理,第一图形码检测结果中的有效码在第二图形码检测结果中可能变为无效码。可以理解的是,第一图形码检测结果中的有效码在第二图形码检测结果中也可能仍为有效码,第一图形码检测结果中的无效码在第二图形码检测结果中也可能仍为无效码。如图3和图4a所示,由于图3中33所示的图形码未完整显示,故在第一图形码检测结果中其为无效码,而图4a中与其对应的图形码43完整显示,故在第二图形码检测结果中其变成了有效码。
在另一实施例中,将所述K个无效图形码所对应的图形码图像区域的位置确定为参考图像位置,计算机设备基于物体跟踪算法确定第二图像中与参考图像位置(即所K个无效图形码所对应的图形码图像区域)匹配的Y个图形码图像区域。当第二图像中存在与每一个无效图形码所对应的图形码图像区域相匹配的图形码图像区域时,所述Y等于所述N;反之,所述Y小于所述N。如图3和图4b所示,图像401为与图3所示第一图像301相邻的第二图像,图3所示目标图像区域302中的无效图形码所对应的图形码图像区域为33和34,图4b中与图形码图像区域33和34相匹配的图形码图像区域为43和44。进一步的,对第二图像中的所述Y个图形码图像区域进行图形码识别检测,得到第二图形码检测结果。
此情况下,第二图形码检测结果所指示的A个有效图形码和B个无效图形码均为第一图形码检测结果所指示的无效图形码。由于第二图像的图像内容与目标图像区域中的图像内容不完全相同,可能由于图形码在目标图像区域中展示出的部分内容不足以成功解码,则在第一图形码检测结果中其为无效码;而该图形码在第二图中展示出的内容足以成功解码,则在第二图形码检测结果中其变为有效码。可以理解的是,第一图形码检测结果中的无效码在第二图形码检测结果中也可能仍为无效码。采用此种方式,可以利用相邻图像只针对无效图形码进行识别检测,而针对已经确定的有效图形码不再进行识别检测,这样可以提高图形码识别检测的效率,并且可以大大减小计算开销,节省计算资源以及软硬件资源。
S206、根据所述第二图形码检测结果以及所述第一图形码检测结果确定目标图形码检测结果。
本申请实施例中,计算机设备先根据第二图形码检测结果以及第一图形码检测结果确定参考图形码检测结果。在一实施方式中,先根据第一图形码检测结果和第二图形码检测结果确定待更新图形码,所述待更新图形码在所述第一图形码检测结果中为无效图形码,而在所述第二图形码检测结果中其为有效图形码。然后根据第二图形码检测结果中包括的各个待更新图形码的相关信息对第一图形码检测结果进行更新,包括:将第一图形码检测结果包括的各个待更新图形码对应的无效标识调整为有效标识,将第一图形码检测结果包括的各个待更新图形码对应的无效特征信息替换为第二图形码检测结果中的有效特征信息,等等。最后将更新后的第一图形码检测结果作为参考图形码检测结果。
当参考图形码检测结果包括N个图形码的有效信息,即包括所述N个图形码图像区域中的每一个图形码图像区域中的图形码的有效标识以及有效特征信息时,表明基于所述参考图形码检测结果包括的图形码的有效特征信息,能够成功解码所述N个图形码图像区域中的每一个图形码图像区域中的图形码。此时可以将所述参考图形码检测结果作为最终的目标图形码检测结果。
当参考图形码检测结果包括少于N个图形码的有效信息,表明基于所述参考图形码检测结果包括的图形码的有效特征信息,还不能够成功解码所述N个图形码图像区域中的每一个图形码图像区域中的图形码。此时计算机设备可以从前文所述的相邻图像序列中重新选择一张图像作为新的第二图像,并根据所述参考图像位置对所述新的第二图像进行图形码识别检测,得到新的第二图形码检测结果,具体的图形码识别检测方式可参考前文描述。
在确定出新的第二图形码检测结果之后,计算机设备根据所述新的第二图形码检测结果确定新的参考图形码检测结果。在一实施方式中,可以根据所述新的第二图形码检测结果以及第一图形码检测结果确定新的参考图形码检测结果,具体确定方式可参考前文描述。在另一实施方式中,可以根据所述新的第二图形码检测结果对所述参考图形码检测结果进行更新,得到更新后的参考图形码检测结果。具体地,先根据参考图形码检测结果和新的第二图形码检测结果确定待更新图形码,所述待更新图形码在所述参考图形码检测结果中为无效图形码,而在所述新的第二图形码检测结果中其为有效图形码。然后根据新的第二图形码检测结果中包括的各个待更新图形码的相关信息对参考图形码检测结果进行更新,包括:将参考图形码检测结果包括的各个待更新图形码对应的无效标识调整为有效标识,将参考图形码检测结果包括的各个待更新图形码对应的无效特征信息替换为新的第二图形码检测结果中的有效特征信息,等等;从而得到更新后的参考图形码检测结果,更新后的参考图形码检测结果即为新的参考图形码检测结果。
当新的参考图形码检测结果包括N个图形码的有效信息时,将所述新的参考图形码检测结果作为最终的目标图形码检测结果;当新的参考图形码检测结果仍然包括少于N个图形码的有效信息时,继续从前文所述的相邻图像序列中重新选取新的第二图像,并执行根据所述参考图像位置对新的第二图像进行图形码识别检测,得到新的第二图形码检测结果,以及根据新的第二图形码检测结果确定新的参考图形码检测结果的步骤。重复执行上述步骤,直至检测到满足检测停止条件时,将最新的参考图形码检测结果确定为最终的目标图形码检测结果。其中,满足检测停止条件是指:最新的参考图形码检测结果包括N个图形码的有效信息,或者,第二图像的选取次数大于或等于目标数值。例如,从相邻图像序列中选取了5张图像作为第二图像进行了图形码识别检测,即使根据第5张第二图像确定出的参考图形码检测结果仍然包括少于N个图形码的有效信息,也直接将根据第5张第二图像确定出的参考图形码检测结果确定为最终的目标图形码检测结果。
本申请实施例中,确定出的目标图形码检测结果包括X个图形码的有效信息和位置信息,所述X为非负整数,且小于或等于所述N。所述有效信息包括图形码的有效特征信息和有效标识,等等。其中,图形码的位置信息可以是图形码在第一图像中的图像位置信息,可以用图形码对应的一个像素点(如中心像素点)或者多个像素点(如四个边界角像素点)的位置坐标表示图形码的图像位置。在可行的实施方式中,还可以将图形码对应的一个像素点(如中心像素点)或者多个像素点(如四个边界角像素点)的位置坐标转换为归一化坐标后用于表示图形码的图像位置。归一化坐标是指用位置坐标原始值除以相应坐标最大值(如将原始横坐标值除以横坐标最大值,原始纵坐标值除以纵坐标最大值),使之变为0-1之间的数字。转换后的归一化坐标有利于后续快速得到相应的显示坐标,即在显示屏中的显示位置。
采用上述方式,不仅可以识别显示屏所显示的图像中的各个图形码,还可以在对显示屏所显示的图像进行图形码识别检测过程中,如果显示屏显示的图像中包括无效图形码,则可以结合相邻图像进行图形码识别检测。一方面,针对由于判定图形码展示的内容的特征信息不足于成功解码而将其确定为无效图形码的情况,可以从相邻图像中获取其完整的特征信息,从而使得其可以成功解码,这可以有效提高图形码的解码成功率。另一方面,针对由于判定图形码的绘制不符合图形码绘制规则而将其确定为无效图形码的情况,初步判定结果可能不准确,此时可以结合相邻图像对其进行进一步识别检测,从而有效避免图形码的误检测,提高图形码检测结果的准确性。
本申请实施例中,在步骤S206之后,所述图形码检测方法还可以包括如图5所示的以下步骤:
S207、根据所述目标图形码检测结果包括的X个图形码的有效特征信息从所述X个图形码中确定待选择图形码。
本申请实施例中,计算机设备先根据目标图形码检测结果包括的X个图形码的有效特征信息确定所述X个图形码中每一个图形码的图形码类型。其中,图形码类型可以是基于图形码绘制规则确定的,包括:条形码、机票码、二维码、自定义码,等等;图形码类型也可以是基于扫码应用程序确定的,包括:微信二维码、微信小程序码、支付宝二维码,等等;图形码类型也可以是基于图形码的功能确定的,包括收款码、付款码、网页链接码、商品信息码,等等。
然后根据所述每一个图形码的图形码类型以及响应所述扫码指令的扫码应用程序所支持的图形码类型,从所述X个图形码中确定所述扫码应用程序所支持的图形码;并检测所述扫码应用程序所支持的图形码中是否存在异常图形码,异常图形码包括处于预设的黑名单内或者包含恶意内容的图形码。最后将所述扫码应用程序所支持的图形码中除所述异常图形码之外的图形码确定为待选择图形码。采用上述方式进行待选择图形码的确定,一方面可以保证一定可以显示确定出的待选择图形码对应的内容,有效避免无法显示图形码对应的内容的问题;另一方面可以保证安全性。
本申请实施例中,当确定出的待选择图形码的个数为0时,计算机设备可以输出异常提示信息,例如“无法识别”,等;并且可以输出操作提示信息,例如“选择其他图形码进行扫码”、“重新扫码”,等。当确定出的待选择图形码为一个时,执行步骤S208;当确定出的待选择图形码为至少两个时,执行步骤S209至步骤S210。
S208、当所述待选择图形码为一个时,跳转至与所述待选择图形码对应的内容显示页面。
本申请实施例中,当确定出的待选择图形码只有一个时,直接跳转至与该待选择图形码对应的内容显示页面。
S209、当所述待选择图形码为至少两个时,根据至少两个待选择图形码的位置信息,在每一个待选择图形码的显示位置处显示与待选择图形码关联的跳转按钮。
本申请实施例中,当确定出的待选择图形码为至少两个时,先根据该至少两个待选择图形码的位置信息(即在目标图像区域中的图像位置)以及图像位置和显示位置的转换关系,确定每一个待选择图形码在显示屏中的显示位置,该显示位置可以是一个显示区域。其中,当图形码的位置信息用归一化坐标表示时,可以利用显示屏用于显示图像的显示区域的尺寸(如全屏显示图像时,则为显示屏尺寸)与该归一化坐标相乘,即可快速得到图形码在显示屏中的显示位置。然后在每一个待选择图形码的显示位置处显示与待选择图形码关联的跳转按钮,以供用户选择需要显示哪一个待选择图形码对应的内容。
例如,当目标图形码检测结果包括图形码图像区域31、32、33和34中的图形码的有效信息,且图形码图像区域31、32和33中的图形码被确定为待选择图形码时,如图6所示,在图形码图像区域31、32和33中的图形码所对应的显示位置处分别显示一个与其关联的跳转按钮61、62和63。在可行的实施方式中,跳转按钮可以是显示在图形码显示位置的中心、上方、下方、左方或者右方。
在一实施例中,跳转按钮可以做呼吸动画,也可以做跑马灯动画。计算机设备还可以输出关于跳转按钮的操作提示信息,例如图6中所示的提示内容“轻触按钮,打开页面”。
在一可行的实施例中,计算机设备还可以在信息显示区域显示每一个待选择图形码的摘要信息,所述摘要信息包括:图形码的类型、图形码的标识、图形码的有效时间、图形码所对应的链接信息中的一种或者多种。信息显示区域可以是根据待选择图形码的显示位置确定的,如图7a所示,可以在每一个待选择图形码的显示位置处的上方显示其摘要信息,例如图7a中右下方的图形码的摘要信息为““XXX”的收款码”。信息显示区域也可以是预设设置的一指定区域,如图7b所示,可以在显示屏的中心区域集中显示每一个待选择图形码的摘要信息。在信息显示区域显示每一个待选择图形码的摘要信息,可以使得用户了解每一个待选择图形码的相关信息,这有利于用户快速选择图形码。
S210、在检测到用户针对显示的多个跳转按钮的选择操作时,跳转至与所述选择操作所选中的跳转按钮关联的待选择图形码所对应的内容显示页面。
本申请实施例中,所述选择操作可以是单击、多击或者长按等触发操作。例如,在检测到用户点击了图6所示的跳转按钮61,则跳转至与跳转按钮61关联的小程序码(即图形码图像区域31中的图形码)所对应的内容显示页面。
在可行的实施例中,在显示用户选择的图形码对应的内容显示页面的过程中,当检测到用户输入的返回指令时,返回至步骤S209中所示的图形码选择界面(即图6、图7a或图7b所示的界面),以供用户在需要重新选择跳转的图形码时,能够快速进行选择。
采用上述方式,可以识别显示屏所显示的图像中的多个图形码,并且可以在获取到多个图形码的有效特征信息时,输出多个跳转按钮以供用户选择需要显示哪一个待选择图形码的内容,这样可以按需进行跳转,从而有效避免由于误跳转导致的需要重复进行图形码扫码以及图形码识别检测等操作的问题,有效节省用户的时间。
传统的摄像头扫码界面都有一个取景框,需要用户手动将拍摄的图形码移入取景框中才能进行图形码识别,对于尺寸较大的图形码或者距离较近的图形码,需要后移计算机设备(如手机)或者手动缩小摄像头的放大倍数;对于尺寸较小的图形码,需要前移计算机设备或者手动放大摄像头的放大倍数。上述物理移动位置和手动变焦的操作,操作繁琐且效率低,甚至用户通常还无法单手完成,这会给诸如提着东西的用户带来很大的困扰。
基于前文所述的图形码检测方法的思想,本申请实施例提供一种去掉取景框,全屏取景扫码的方案,以大大减少物理移动位置和手动变焦的操作几率。为实现所述全屏取景扫码的方案,本申请实施例所涉及的计算机设备的图形码识别界面以及图像处理方式的设置包括:全屏的取景框(如图8中81所示),即全屏显示摄像头采集到的图像;全屏的扫描线(如图8中82所示),即针对全屏显示的所有图像区域进行图形码扫描识别。如图9a所示,具体处理方式包括如下步骤:
第一步:响应扫码指令调用摄像头获取图像帧,摄像头返回的图像帧是彩色的BGRA格式,需要将其转换成灰度图Gray格式。
第二步:处理图像帧,即针对全屏显示的该图像帧的至少部分图像区域进行处理。图形码识别引擎可以基于整张灰度图来做直方图(如全局直方图),从而通过直方图二值化算法进行背景噪声的过滤。这种降噪方式的降噪效果与图片的质量和背景的占比有关,对于全屏取景扫码的方案,这种降噪方式的降噪效果通常较差。
基于此,如图9b所示,可以先针对转换得到的灰度图进行目标检测,以确定灰度图中图形码的数量以及每一个图形码的位置。本申请实施例可以采用深度学习的方法进行目标检测。进一步地,有针对性地抠出每一个图形码图像(即只包括图形码的图像区域或者尺寸略大于图形码的图像区域),再通过直方图二值化算法来对各个图形码图像进行背景噪声的过滤,这样不管全屏取景范围有多大,都可以具有较好的降噪效果。在可行的实施方式中,如图9c所示,也可以先针对原始图像帧进行目标检测,以确定原始图像帧中图形码的数量以及每一个图形码的位置。然后有针对性地抠出每一个图形码图像,并针对每一个图形码图像,先将其转换成灰度图像,然后再通过直方图二值化算法来对转换成的灰度图像进行背景噪声的过滤。这样还可以减少需要转换成灰度图的图像内容,有效节省计算资源,提高处理效率。
其中,在进行目标检测的过程中,可以采用AI算法(如卷积神经网络)进行图形码的识别,从而定位各个图形码的位置以及确定图形码的数量。在对图形码进行降噪的过程中,可以进一步结合更加高效的二值化算法(如Hybird、FastWindow、SimpleAdative,等)进行降噪;或者只利用上述二值化算法进行降噪。由于取景框的增大(即图形码识别检测区域的增大),各个图形码能准确识别出来的难度大大增加,本申请实施例通过上述方式能够准确快速地识别出全屏取景框中所有的图形码。
进一步地,针对各个图形码图像进行图形码特征定位,以获取各个图形码图像中的图形码的特征信息,并根据获取到的特征信息确定出能够成功解码的图形码。当全屏取景框中包括一个或者多个完整的图形码时,通常可以提取出每一个图形码的完整特征信息。
但对于全屏取景框中包括非完整的图形码时,则往往不能提取出其完整的特征信息。对于这种情况,由于摄像头获取到的图像帧是不稳定的,可能前一帧图像中只有图形码的一半,而后一帧图像中该图形码就是完整的;此时可以通过多处理几帧图像,以获取全屏取景框中非完整的图形码的完整特征信息。基于此,本申请实施例提供了另一种处理图像帧的方式,如图10所示,包括如下步骤:
先利用AI算法针对全屏显示的图像区域进行图形码的目标检测,以确定可能存在图形码的各个图形码图像区域,以及确定图形码图像区域的个数n。然后针对各个图形码图像区域进行图像处理(如降噪处理,等),并提取各个图形码图像区域中的图形码的特征信息。基于提取出的特征信息检测各个图形码图像区域中的图形码是否能够成功解码,如果能够成功解码的图形码数量m小于图形码图像区域的数量n,那么说明全屏显示的图像中还有不能够成功解码的图形码,此时可以通过多处理几帧图像,以获取全屏取景框中非完整的图形码的完整特征信息。
具体地,获取摄像头采集到的与当前图像帧相邻的相邻图像(如下一帧图像),采用物体跟踪算法,从相邻图像中提取被跟踪的物体(即之前不能够成功解码的图形码)的特征信息。利用从相邻图像中提取出的特征信息对之前获取到的特征信息进行更新。如果基于更新后的特征信息能够成功解码的图形码数量m仍然小于图形码图像区域的数量n,则继续选择新的相邻图像(如下下一帧图像)进行特征信息提取,直至基于更新后的特征信息能够成功解码的图形码数量m大于或等于图形码图像区域的数量n,或者相邻图像的选取次数超过预设次数k时,停止图像帧的处理。其中,所述m、n和k均为非负整数。上述方式中采用物体跟踪算法,可以避免相同内容的重复处理,从而可以有效减小计算开销以及提高图形码识别检测的效率。
第三步:标识图形码位置。第二步中识别出的图形码的信息包括图形码的位置信息,该位置信息是图形码在图像帧中的相对坐标(摄像头返回的图像帧尺寸是可以选择的),它不同于适配的显示屏尺寸,所以需要做一次坐标的转换,将图形码的图像位置转换为其显示位置。如果图像帧中有做裁剪,也就是有做移动,则需要保证前后是逆变换。
第四步:用户选择图形码。如果能够成功解码的图形码只有一个,则不需要用户选择,直接跳转落地页(即图形码所对应的内容显示页面)。如果能够成功解码的图形码有多个时,根据该多个图形码的显示位置显示与各个图形码相关联的跳转按钮(如图8中的83所示),跳转按钮是可以点击的;将用户针对该多个跳转按钮所选中的跳转按钮相关联的图形码确定为用户所选择的图形码。其中,跳转按钮可以做呼吸动画,跳转按钮可以是一个绿点。
第五步:跳转落地页,即跳转至用户所选择的图形码所对应的内容显示页面)。落地页的形式可以是H5页面,小程序页面,或者带离线模板的H5页面,等等。
在可行的实施方式中,还可以设置黑名单和白名单策略。只显示与能够成功解码的图形码中的白名单码或者非黑名单码相关联的跳转按钮供用户选择。如果识别到多个能够成功解码的图形码,但其中只有一个正常码,其余均为黑名单码,此时也可以直接跳转落地页(即正常码所对应的内容显示页面),不用等待用户选择。其中,黑名单和白名单可以是服务器动态下发的,可以在计算机设备下一次启动扫码功能时生效。采用上述黑名单和白名单策略,可以有效保证扫码安全性。
采用上述全屏取景扫码的方案,通常无需用户进行物理移动位置和手动变焦的操作,用户单手就可以完成整个流程,操作简单且效率高。另外,针对非完整图形码展示的内容的特征信息不足于成功解码的情况,可以从相邻图像中获取其完整的特征信息,从而使得其可以成功解码,这是一种新的处理方式,可以有效提高图形码的解码成功率。
请参阅图11,为本申请实施例提供的一种图形码检测装置的结构示意图。本申请实施例中所描述的图形码检测装置,对应于前文所述的计算机设备,所述装置包括:
获取单元1101,用于响应扫码指令调用摄像头获取第一图像;
处理单元1102,用于对所述第一图像中的目标图像区域进行图形码分析检测,得到N个图形码图像区域;
所述处理单元1102,用于对所述N个图形码图像区域进行图形码识别检测,得到第一图形码检测结果,第一图形码检测结果包括M个有效图形码和K个无效图形码的相关信息;
所述处理单元1102,还用于若根据所述第一图形码检测结果确定所述M小于所述N,则触发所述获取单元1101获取所述摄像头采集到的与所述第一图像在时序上相邻的第二图像,并根据参考图像位置对所述第二图像进行图形码识别检测,得到第二图形码检测结果;根据所述第二图形码检测结果以及所述第一图形码检测结果确定目标图形码检测结果;
其中,所述参考图像位置是根据所述N个图形码图像区域的位置确定的,或者是根据所述K个无效图形码所对应的图形码图像区域的位置确定的,所述N、M和K为非负整数。
在一实施例中,所述目标图形码检测结果包括X个图形码的有效信息和位置信息,所述有效信息包括图形码的有效特征信息;
所述处理单元1102,还用于根据所述X个图形码的有效特征信息从所述X个图形码中确定待选择图形码,所述X为非负整数;
所述装置还包括显示单元1103,用于当所述待选择图形码为至少两个时,根据至少两个待选择图形码的位置信息,在每一个待选择图形码的显示位置处显示与待选择图形码关联的跳转按钮;
所述处理单元1102,还用于在检测到用户针对显示的多个跳转按钮的选择操作时,触发所述显示单元1103跳转至与所述选择操作所选中的跳转按钮关联的待选择图形码所对应的内容显示页面。
在一实施例中,所述显示单元1103,还用于在信息显示区域显示所述每一个待选择图形码的摘要信息,所述摘要信息包括:图形码的类型、图形码的标识、图形码的有效时间、图形码所对应的链接信息中的一种或者多种。
在一实施例中,所述处理单元1102,具体用于:
根据所述X个图形码的有效特征信息确定所述X个图形码中每一个图形码的图形码类型;根据所述每一个图形码的图形码类型以及响应所述扫码指令的扫码应用程序所支持的图形码类型,从所述X个图形码中确定所述扫码应用程序所支持的图形码;检测所述扫码应用程序所支持的图形码中是否存在异常图形码;将所述扫码应用程序所支持的图形码中除所述异常图形码之外的图形码确定为待选择图形码。
在一实施例中,所述处理单元1102,具体用于:
根据参考图像位置对所述第二图像进行图形码分析检测,确定所述第二图像中与所述参考图像位置匹配的Y个图形码图像区域,所述Y为非负整数;对所述Y个图形码图像区域进行图形码识别检测,得到第二图形码检测结果。
在一实施例中,所述第二图像是从相邻图像序列中选择的一张图像,所述相邻图像序列中的图像与所述第一图像在时序上相邻;所述处理单元1102,具体用于:
根据所述第二图形码检测结果以及所述第一图形码检测结果确定参考图形码检测结果;当所述参考图形码检测结果包括少于N个图形码的有效信息时,从所述相邻图像序列中重新选择一张图像作为新的第二图像,并根据所述参考图像位置对所述新的第二图像进行图形码识别检测,得到新的第二图形码检测结果;根据所述新的第二图形码检测结果确定新的参考图形码检测结果;当检测到满足检测停止条件时,将所述新的参考图形码检测结果确定为目标图形码检测结果。
在一实施例中,所述处理单元1102,具体用于:
根据所述新的第二图形码检测结果以及所述第一图形码检测结果重新确定参考图形码检测结果;或者,根据所述新的第二图形码检测结果对所述参考图形码检测结果进行更新,得到更新后的参考图形码检测结果。
在一实施例中,所示满足检测停止条件是指:新的参考图形码检测结果包括N个图形码的有效信息,或者,第二图像的选取次数大于或等于目标数值。
可以理解的是,本申请实施例的图形码检测装置的各功能单元的功能可根据上述方法实施例中的方法具体实现,其具体实现过程可以参照上述方法实施例的相关描述,此处不再赘述。
本申请实施例通过对第一图像中的目标图像区域进行图形码分析检测得到N个图形码图像区域,并对该N个图形码图像区域进行图形码识别检测,得到包括M个有效图形码的相关信息的第一图形码检测结果;若M小于N,则根据参考图像位置对与第一图像相邻的第二图像进行图形码识别检测,得到第二图形码检测结果;最后根据第二图形码检测结果以及第一图形码检测结果确定目标图形码检测结果,从而可以结合相邻图像进行图形码识别检测,这不仅可以提高图形码检测结果的准确性,还有利于提高图形码的解码成功率。
请参阅图12,图12为本申请实施例提供的一种计算机设备的结构示意图。本申请实施例中所描述的计算机设备包括:处理器1201、用户接口1202、通信接口1203、存储器1204及摄像头1205。其中,处理器1201、用户接口1202、通信接口1203、存储器1204及摄像头1205可通过总线或其他方式连接,本申请实施例以通过总线连接为例。
其中,处理器1201(或称CPU(Central Processing Unit,中央处理器))是计算机设备的计算核心以及控制核心,其可以解析计算机设备内的各类指令以及处理计算机设备的各类数据,例如:CPU可以用于解析用户向计算机设备所发送的开关机指令,并控制计算机设备进行开关机操作;再如:CPU可以在计算机设备内部结构之间传输各类交互数据,等等。用户接口1202是实现用户与计算机设备进行交互和信息交换的媒介,其具体体现可以包括用于输出的显示屏(Display)、扬声器以及用于输入的触控屏、拾音设备、键盘(Keyboard)等等,需要说明的是,此处的键盘既可以为实体键盘,也可以为触屏虚拟键盘,还可以为实体与触屏虚拟相结合的键盘。通信接口1203可选的可以包括标准的有线接口、无线接口(如Wi-Fi、移动通信接口等),受处理器1201的控制用于收发数据。存储器1204(Memory)是计算机设备中的记忆设备,用于存放程序和数据。可以理解的是,此处的存储器1204既可以包括计算机设备的内置存储器,当然也可以包括计算机设备所支持的扩展存储器。存储器1204提供存储空间,该存储空间存储了计算机设备的操作系统,可包括但不限于:Android系统、iOS系统、Windows Phone系统等等,本申请对此并不作限定。摄像头1205,即具备拍摄功能的拍摄设备,可选的可以包括可见光相机等单目或者多目相机。
在本申请实施例中,处理器1201通过运行存储器1204中的可执行程序代码,执行如下操作:
响应扫码指令调用摄像头1205获取第一图像,并对所述第一图像中的目标图像区域进行图形码分析检测,得到N个图形码图像区域;对所述N个图形码图像区域进行图形码识别检测,得到第一图形码检测结果,第一图形码检测结果包括M个有效图形码和K个无效图形码的相关信息;若根据所述第一图形码检测结果确定所述M小于所述N,则获取所述摄像头采集到的与所述第一图像在时序上相邻的第二图像,并根据参考图像位置对所述第二图像进行图形码识别检测,得到第二图形码检测结果;根据所述第二图形码检测结果以及所述第一图形码检测结果确定目标图形码检测结果;其中,所述参考图像位置是根据所述N个图形码图像区域的位置确定的,或者是根据所述K个无效图形码所对应的图形码图像区域的位置确定的,所述N、M和K为非负整数。
在一实施例中,所述目标图形码检测结果包括X个图形码的有效信息和位置信息,所述有效信息包括图形码的有效特征信息;所述处理器1201根据所述第二图形码检测结果以及所述第一图形码检测结果确定目标图形码检测结果之后,还用于:根据所述X个图形码的有效特征信息从所述X个图形码中确定待选择图形码,所述X为非负整数;当所述待选择图形码为至少两个时,根据至少两个待选择图形码的位置信息,通过所述用户接口1202在每一个待选择图形码的显示位置处显示与待选择图形码关联的跳转按钮;在检测到用户针对显示的多个跳转按钮的选择操作时,通过所述用户接口1202和所述通信接口1203跳转至与所述选择操作所选中的跳转按钮关联的待选择图形码所对应的内容显示页面。
在一实施例中,所述处理器1201还用于:通过所述用户接口1202在信息显示区域显示所述每一个待选择图形码的摘要信息,所述摘要信息包括:图形码的类型、图形码的标识、图形码的有效时间、图形码所对应的链接信息中的一种或者多种。
所述处理器1201根据所述X个图形码的有效特征信息从所述X个图形码中确定待选择图形码时,具体用于:根据所述X个图形码的有效特征信息确定所述X个图形码中每一个图形码的图形码类型;根据所述每一个图形码的图形码类型以及响应所述扫码指令的扫码应用程序所支持的图形码类型,从所述X个图形码中确定所述扫码应用程序所支持的图形码;检测所述扫码应用程序所支持的图形码中是否存在异常图形码;将所述扫码应用程序所支持的图形码中除所述异常图形码之外的图形码确定为待选择图形码。
在一实施例中,所述处理器1201根据参考图像位置对所述第二图像进行图形码识别检测,得到第二图形码检测结果时,具体用于:根据参考图像位置对所述第二图像进行图形码分析检测,确定所述第二图像中与所述参考图像位置匹配的Y个图形码图像区域,所述Y为非负整数;对所述Y个图形码图像区域进行图形码识别检测,得到第二图形码检测结果。
在一实施例中,所述第二图像是从相邻图像序列中选择的一张图像,所述相邻图像序列中的图像与所述第一图像在时序上相邻;所述处理器1201根据所述第二图形码检测结果以及所述第一图形码检测结果确定目标图形码检测结果时,具体用于:根据所述第二图形码检测结果以及所述第一图形码检测结果确定参考图形码检测结果;当所述参考图形码检测结果包括少于N个图形码的有效信息时,从所述相邻图像序列中重新选择一张图像作为新的第二图像,并根据所述参考图像位置对所述新的第二图像进行图形码识别检测,得到新的第二图形码检测结果;根据所述新的第二图形码检测结果确定新的参考图形码检测结果;当检测到满足检测停止条件时,将所述新的参考图形码检测结果确定为目标图形码检测结果。
在一实施例中,所述处理器1201根据所述新的第二图形码检测结果确定新的参考图形码检测结果时,具体用于:根据所述新的第二图形码检测结果以及所述第一图形码检测结果重新确定参考图形码检测结果;或者,根据所述新的第二图形码检测结果对所述参考图形码检测结果进行更新,得到更新后的参考图形码检测结果。
在一实施例中,所示满足检测停止条件是指:新的参考图形码检测结果包括N个图形码的有效信息,或者,第二图像的选取次数大于或等于目标数值。
具体实现中,本申请实施例中所描述的处理器1201、用户接口1202、通信接口1203、存储器1204及摄像头1205可执行本申请实施例提供的一种图形码检测方法中所描述的计算机设备的实现方式,也可执行本申请实施例提供的一种图形码检测装置中所描述的实现方式,在此不再赘述。
本申请实施例通过对第一图像中的目标图像区域进行图形码分析检测得到N个图形码图像区域,并对该N个图形码图像区域进行图形码识别检测,得到包括M个有效图形码的相关信息的第一图形码检测结果;若M小于N,则根据参考图像位置对与第一图像相邻的第二图像进行图形码识别检测,得到第二图形码检测结果;最后根据第二图形码检测结果以及第一图形码检测结果确定目标图形码检测结果,从而可以结合相邻图像进行图形码识别检测,这不仅可以提高图形码检测结果的准确性,还有利于提高图形码的解码成功率。
相应的,本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行如本申请实施例所述的图形码检测方法,具体实现方式可参考前文描述,此处不再赘述。
相应的,本申请实施例还提供了一种计算机程序产品或计算机程序,所述计算机程序产品或计算机程序包括计算机指令,所述计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取所述计算机指令,处理器执行所述计算机指令,使得所述计算机设备执行如本申请实施例所述的图形码检测方法,具体实现方式可参考前文描述,此处不再赘述。
需要说明的是,对于前述的各个方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某一些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(Read-Only Memory,ROM)、随机存取器(Random AccessMemory,RAM)、磁盘或光盘等。
以上所揭露的仅为本申请部分实施例而已,当然不能以此来限定本申请之权利范围,因此依本申请权利要求所作的等同变化,仍属本申请所涵盖的范围。

Claims (11)

1.一种图形码检测方法,其特征在于,所述方法包括:
响应扫码指令调用摄像头获取第一图像,并对所述第一图像中的目标图像区域进行图形码分析检测,得到N个图形码图像区域;
对所述N个图形码图像区域进行图形码识别检测,得到第一图形码检测结果,第一图形码检测结果包括M个有效图形码和K个无效图形码的相关信息;
若根据所述第一图形码检测结果确定所述M小于所述N,则获取所述摄像头采集到的与所述第一图像在时序上相邻的第二图像,并根据参考图像位置对所述第二图像进行图形码识别检测,得到第二图形码检测结果;
根据所述第二图形码检测结果以及所述第一图形码检测结果确定目标图形码检测结果;
其中,所述参考图像位置是根据所述N个图形码图像区域的位置确定的,或者是根据所述K个无效图形码所对应的图形码图像区域的位置确定的,所述N、M和K为非负整数。
2.如权利要求1所述的方法,其特征在于,所述目标图形码检测结果包括X个图形码的有效信息和位置信息,所述有效信息包括图形码的有效特征信息;所述根据所述第二图形码检测结果以及所述第一图形码检测结果确定目标图形码检测结果之后,所述方法还包括:
根据所述X个图形码的有效特征信息从所述X个图形码中确定待选择图形码,所述X为非负整数;
当所述待选择图形码为至少两个时,根据至少两个待选择图形码的位置信息,在每一个待选择图形码的显示位置处显示与待选择图形码关联的跳转按钮;
在检测到用户针对显示的多个跳转按钮的选择操作时,跳转至与所述选择操作所选中的跳转按钮关联的待选择图形码所对应的内容显示页面。
3.如权利要求2所述的方法,其特征在于,所述方法还包括:
在信息显示区域显示所述每一个待选择图形码的摘要信息,所述摘要信息包括:图形码的类型、图形码的标识、图形码的有效时间、图形码所对应的链接信息中的一种或者多种。
4.如权利要求2或3所述的方法,其特征在于,所述根据所述X个图形码的有效特征信息从所述X个图形码中确定待选择图形码,包括:
根据所述X个图形码的有效特征信息确定所述X个图形码中每一个图形码的图形码类型;
根据所述每一个图形码的图形码类型以及响应所述扫码指令的扫码应用程序所支持的图形码类型,从所述X个图形码中确定所述扫码应用程序所支持的图形码;
检测所述扫码应用程序所支持的图形码中是否存在异常图形码;
将所述扫码应用程序所支持的图形码中除所述异常图形码之外的图形码确定为待选择图形码。
5.如权利要求1所述的方法,其特征在于,所述根据参考图像位置对所述第二图像进行图形码识别检测,得到第二图形码检测结果,包括:
根据参考图像位置对所述第二图像进行图形码分析检测,确定所述第二图像中与所述参考图像位置匹配的Y个图形码图像区域,所述Y为非负整数;
对所述Y个图形码图像区域进行图形码识别检测,得到第二图形码检测结果。
6.如权利要求1或5所述的方法,其特征在于,所述第二图像是从相邻图像序列中选择的一张图像,所述相邻图像序列中的图像与所述第一图像在时序上相邻;所述根据所述第二图形码检测结果以及所述第一图形码检测结果确定目标图形码检测结果,包括:
根据所述第二图形码检测结果以及所述第一图形码检测结果确定参考图形码检测结果;
当所述参考图形码检测结果包括少于N个图形码的有效信息时,从所述相邻图像序列中重新选择一张图像作为新的第二图像,并根据所述参考图像位置对所述新的第二图像进行图形码识别检测,得到新的第二图形码检测结果;
根据所述新的第二图形码检测结果确定新的参考图形码检测结果;
当检测到满足检测停止条件时,将所述新的参考图形码检测结果确定为目标图形码检测结果。
7.如权利要求6所述的方法,其特征在于,所述根据所述新的第二图形码检测结果确定新的参考图形码检测结果,包括:
根据所述新的第二图形码检测结果以及所述第一图形码检测结果重新确定参考图形码检测结果;或者,
根据所述新的第二图形码检测结果对所述参考图形码检测结果进行更新,得到更新后的参考图形码检测结果。
8.如权利要求6所述的方法,其特征在于,所示满足检测停止条件是指:新的参考图形码检测结果包括N个图形码的有效信息,或者,第二图像的选取次数大于或等于目标数值。
9.一种图形码检测装置,其特征在于,所述装置包括:
获取单元,用于响应扫码指令调用摄像头获取第一图像;
处理单元,用于对所述第一图像中的目标图像区域进行图形码分析检测,得到N个图形码图像区域;
所述处理单元,用于对所述N个图形码图像区域进行图形码识别检测,得到第一图形码检测结果,第一图形码检测结果包括M个有效图形码和K个无效图形码的相关信息;
所述处理单元,还用于若根据所述第一图形码检测结果确定所述M小于所述N,则触发所述获取单元获取所述摄像头采集到的与所述第一图像在时序上相邻的第二图像,并根据参考图像位置对所述第二图像进行图形码识别检测,得到第二图形码检测结果;根据所述第二图形码检测结果以及所述第一图形码检测结果确定目标图形码检测结果;
其中,所述参考图像位置是根据所述N个图形码图像区域的位置确定的,或者是根据所述K个无效图形码所对应的图形码图像区域的位置确定的,所述N、M和K为非负整数。
10.一种计算机设备,其特征在于,包括:处理器和存储器,所述存储器存储有可执行程序代码,所述处理器用于调用所述可执行程序代码,执行如权利要求1-8中任一项所述的图形码检测方法。
11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行如权利要求1-8中任一项所述的图形码检测方法。
CN202010838466.4A 2020-08-19 2020-08-19 图形码检测方法、装置、计算机设备及存储介质 Active CN112749769B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010838466.4A CN112749769B (zh) 2020-08-19 2020-08-19 图形码检测方法、装置、计算机设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010838466.4A CN112749769B (zh) 2020-08-19 2020-08-19 图形码检测方法、装置、计算机设备及存储介质

Publications (2)

Publication Number Publication Date
CN112749769A true CN112749769A (zh) 2021-05-04
CN112749769B CN112749769B (zh) 2024-06-14

Family

ID=75645380

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010838466.4A Active CN112749769B (zh) 2020-08-19 2020-08-19 图形码检测方法、装置、计算机设备及存储介质

Country Status (1)

Country Link
CN (1) CN112749769B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113780026A (zh) * 2021-08-06 2021-12-10 维沃移动通信(杭州)有限公司 图形码识别方法、装置、电子设备及存储介质

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012194831A (ja) * 2011-03-17 2012-10-11 Nec Corp コード読取装置、コード読取方法およびコード読取プログラム
CN106548105A (zh) * 2015-09-22 2017-03-29 上海行邑信息科技有限公司 一种新型扫码识别控制方法及装置
CN107609437A (zh) * 2017-08-17 2018-01-19 阿里巴巴集团控股有限公司 一种目标图形码识别方法和装置
CN107886026A (zh) * 2016-09-30 2018-04-06 腾讯科技(深圳)有限公司 图形码处理方法及装置
CN108563972A (zh) * 2018-03-09 2018-09-21 广东欧珀移动通信有限公司 图形码识别方法、装置、移动终端及存储介质
CN108629220A (zh) * 2018-03-23 2018-10-09 阿里巴巴集团控股有限公司 一种二维码识读方法、装置及设备
CN110674662A (zh) * 2019-09-17 2020-01-10 维沃移动通信有限公司 一种扫描方法及终端设备
CN111523331A (zh) * 2019-02-02 2020-08-11 北京骑胜科技有限公司 一种二维码识别方法及装置

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012194831A (ja) * 2011-03-17 2012-10-11 Nec Corp コード読取装置、コード読取方法およびコード読取プログラム
CN106548105A (zh) * 2015-09-22 2017-03-29 上海行邑信息科技有限公司 一种新型扫码识别控制方法及装置
CN107886026A (zh) * 2016-09-30 2018-04-06 腾讯科技(深圳)有限公司 图形码处理方法及装置
US20190197276A1 (en) * 2016-09-30 2019-06-27 Tencent Technology (Shenzhen) Company Limited Graphic code processing method and apparatus, and storage medium
CN107609437A (zh) * 2017-08-17 2018-01-19 阿里巴巴集团控股有限公司 一种目标图形码识别方法和装置
CN108563972A (zh) * 2018-03-09 2018-09-21 广东欧珀移动通信有限公司 图形码识别方法、装置、移动终端及存储介质
CN108629220A (zh) * 2018-03-23 2018-10-09 阿里巴巴集团控股有限公司 一种二维码识读方法、装置及设备
CN111523331A (zh) * 2019-02-02 2020-08-11 北京骑胜科技有限公司 一种二维码识别方法及装置
CN110674662A (zh) * 2019-09-17 2020-01-10 维沃移动通信有限公司 一种扫描方法及终端设备

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
廖文婧;杨秀璋;吕询;敖进;范郁锋;于小民;赵小明;: "一种改进的复杂环境下条形码图像增强和定位算法", 现代计算机, no. 11, 15 April 2020 (2020-04-15), pages 37 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113780026A (zh) * 2021-08-06 2021-12-10 维沃移动通信(杭州)有限公司 图形码识别方法、装置、电子设备及存储介质
CN113780026B (zh) * 2021-08-06 2024-05-28 维沃移动通信(杭州)有限公司 图形码识别方法、装置、电子设备及存储介质

Also Published As

Publication number Publication date
CN112749769B (zh) 2024-06-14

Similar Documents

Publication Publication Date Title
WO2014022809A1 (en) Automated scanning
CN110008997B (zh) 图像纹理相似度识别方法、装置及计算机可读存储介质
US11341739B2 (en) Image processing device, image processing method, and program recording medium
CN110738203A (zh) 字段结构化输出方法、装置及计算机可读存储介质
CN111507122A (zh) 图形码识别方法、装置、存储介质及终端
CN112149570B (zh) 多人活体检测方法、装置、电子设备及存储介质
CN113486785A (zh) 基于深度学习的视频换脸方法、装置、设备及存储介质
CN110210467B (zh) 一种文本图像的公式定位方法、图像处理装置、存储介质
CN111461070A (zh) 文本识别方法、装置、电子设备及存储介质
JP2007025902A (ja) 画像処理装置、画像処理方法
CN112749769B (zh) 图形码检测方法、装置、计算机设备及存储介质
CN113128244A (zh) 扫描方法、装置及电子设备
CN112532884A (zh) 识别方法、装置及电子设备
CN108304840B (zh) 一种图像数据处理方法以及装置
CN111401366B (zh) 字符识别方法、装置、计算机设备和存储介质
CN111401882A (zh) 二维码展示方法、装置、存储介质及电子设备
CN114463242A (zh) 图像检测方法、设备、存储介质及装置
CN115422958B (zh) 图片的操作方法、电子设备及存储介质
CN112183149B (zh) 图形码处理方法及装置
CN108021697B (zh) 一种基于终端设备的拍照搜题方法、终端设备及存储介质
CN113673652A (zh) 二维码的显示方法、装置和电子设备
CN111813304A (zh) 图像显示方法及装置
CN112989943A (zh) 一种信息处理方法和信息处理装置
CN117171002A (zh) 基于网页应用的用户界面测试方法、装置、设备和介质
CN116912848A (zh) 答案匹配处理方法、装置、电子设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40043835

Country of ref document: HK

SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant