CN116306733B - 一种放大二维码的方法及电子设备 - Google Patents
一种放大二维码的方法及电子设备 Download PDFInfo
- Publication number
- CN116306733B CN116306733B CN202310227006.1A CN202310227006A CN116306733B CN 116306733 B CN116306733 B CN 116306733B CN 202310227006 A CN202310227006 A CN 202310227006A CN 116306733 B CN116306733 B CN 116306733B
- Authority
- CN
- China
- Prior art keywords
- image
- dimensional code
- amplification factor
- target
- electronic equipment
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 81
- 230000003321 amplification Effects 0.000 claims abstract description 350
- 238000003199 nucleic acid amplification method Methods 0.000 claims abstract description 350
- 230000006870 function Effects 0.000 claims description 41
- 238000004590 computer program Methods 0.000 claims description 5
- 238000004422 calculation algorithm Methods 0.000 description 47
- 102000003712 Complement factor B Human genes 0.000 description 26
- 108090000056 Complement factor B Proteins 0.000 description 26
- 230000008569 process Effects 0.000 description 21
- 238000001514 detection method Methods 0.000 description 19
- 238000012545 processing Methods 0.000 description 12
- 238000010586 diagram Methods 0.000 description 10
- 238000007726 management method Methods 0.000 description 9
- 238000004891 communication Methods 0.000 description 6
- 230000003287 optical effect Effects 0.000 description 6
- 230000004044 response Effects 0.000 description 6
- 230000005236 sound signal Effects 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 5
- 230000000694 effects Effects 0.000 description 5
- 230000004927 fusion Effects 0.000 description 5
- PHEDXBVPIONUQT-RGYGYFBISA-N phorbol 13-acetate 12-myristate Chemical compound C([C@]1(O)C(=O)C(C)=C[C@H]1[C@@]1(O)[C@H](C)[C@H]2OC(=O)CCCCCCCCCCCCC)C(CO)=C[C@H]1[C@H]1[C@]2(OC(C)=O)C1(C)C PHEDXBVPIONUQT-RGYGYFBISA-N 0.000 description 5
- 238000013528 artificial neural network Methods 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 229920001621 AMOLED Polymers 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 2
- 230000003190 augmentative effect Effects 0.000 description 2
- 210000004027 cell Anatomy 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 238000010295 mobile communication Methods 0.000 description 2
- 239000002096 quantum dot Substances 0.000 description 2
- 244000007853 Sarothamnus scoparius Species 0.000 description 1
- 230000005856 abnormality Effects 0.000 description 1
- 238000013529 biological neural network Methods 0.000 description 1
- 210000004556 brain Anatomy 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000019771 cognition Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 229910044991 metal oxide Inorganic materials 0.000 description 1
- 150000004706 metal oxides Chemical class 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 210000002569 neuron Anatomy 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
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/1408—Methods for optical code recognition the method being specifically adapted for the type of code
- G06K7/1417—2D bar codes
-
- 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/1465—Methods for optical code recognition the method including quality enhancement steps using several successive scans of the optical code
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
- G06T3/4084—Scaling of whole images or parts thereof, e.g. expanding or contracting in the transform domain, e.g. fast Fourier transform [FFT] domain scaling
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Electromagnetism (AREA)
- General Health & Medical Sciences (AREA)
- Toxicology (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Quality & Reliability (AREA)
- Telephone Function (AREA)
Abstract
本申请提供一种放大二维码的方法及电子设备,涉及终端技术领域,可以提高扫码速率和准确度;该方法包括:在第一时段内,电子设备采用基于采集到的图像计算出的放大系数,放大二维码;若电子设备在第一时间段内未识别到二维码,在第二时间段内,电子设备将基于采集到的图像计算出的放大系数,以及第一应用提供的放大系数进行融合,采用融合后的放大系数放大二维码。
Description
技术领域
本申请涉及终端技术领域,尤其涉及一种放大二维码的方法及电子设备。
背景技术
二维码(quick response code,QR code)是用某种特定的几何图形按一定规律在平面(二维方向上)分布的、黑白相间的、记录数据符合信息的图形。目前,二维码以其信息传递的有效性和快捷性,是移动互联网时代信息传递中重要的载体,广泛应用于各种场景中。例如,用户使用电子设备扫描二维码进行移动支付等。
然而,针对于尺寸较小的二维码,在扫描过程中需要将二维码放大后才能进行识别。
发明内容
本申请提供一种放大二维码的方法及电子设备,可以提高扫码的速率和准确度。
本申请的实施例采用如下技术方案:
第一方面,提高一种放大二维码的方法,该方法应用于电子设备中,该电子设备包括第一应用,第一应用提供扫描二维码的功能;该方法包括:响应于用户启动第一应用扫描二维码的功能,电子设备采集图像;电子设备获取采集的第一图像;第一图像包括第一二维码;电子设备识别第一二维码,并基于第一图像计算第一目标放大系数;电子设备根据第一目标放大系数采集第二图像;第二图像包括第二二维码,第二二维码在第二图像中的比例大于第一二维码在第一图像中的比例。电子设备在第一时间段内未识别到第二二维码,电子设备获取采集的第二图像,并基于第二图像计算第二目标放大系数;电子设备根据第二目标放大系数和第一应用提供的第三目标放大系数,计算第四目标放大系数;电子设备根据第四目标放大系数采集第三图像;第三图像包括第三二维码,第三二维码在第三图像中的比例大于第二二维码在第二图像中的比例。
基于第一方面,电子设备首先使用第一图像计算第一目标放大系数,然后基于第一目标放大系数采集图像,即在后续采集图像的过程中,基于第一目标放大系数放大二维码,从而可以提高扫码速率和准确度。进而,若电子设备在第一时间段内未识别到二维码,即识别失败,电子设备基于第二图像计算第二目标放大系数,然后根据第二目标放大系数和第一应用提供的第三目标放大系数计算第四目标放大系数,即在后续采集图像的过程中,基于第四目标放大系数放大二维码,从而可以进一步提高扫码速率。
也就是说,采用本申请的方案,在第一时间段内基于电子设备计算的放大系数放大二维码。若电子设备识别失败,在第二时间段内将电子设备计算的放大系数和第一应用提高的放大系数进行融合,采用融合后的放大系数放大二维码。
在第一方面的一种实现方式中,该方法还包括:电子设备在第二时间段内未识别到第三二维码,电子设备根据第三目标放大系数采集第四图像;其中,第四图像包括第四二维码,第四二维码在第四图像中的比例大于第三二维码在第三图像中的比例。
在该实现方式中,若电子设备在第二时间段内未识别到二维码,电子设备根据第三目标放大系数采集图像,即在后续采集图像的过程中,停止计算放大系数,基于第一应用提供的放大系数放大二维码,以达到降低功耗的目的。
在第一方面的一种实现方式中,该方法还包括:响应于用户启动第一应用扫描二维码的功能,电子设备开始计时;当计时时长超过第一阈值时,第一时间段结束,进入第二时间段;当计时时长超过第二阈值时,第二时间段结束。
在该实现方式中,第一时间段可以为0~5s,第二时间段可以为5s~10s,即第一阈值等于5,第二阈值等于10。可以看出,在本申请中,电子设备在第一时间段首先采用计算到的放大系数放大二维码;在第二时间段采用融合后的放大系数放大二维码。
在第一方面的一种实现方式中,基于第一图像计算第一目标放大系数,包括:电子设备获取第一二维码的第一位置数据,和第一图像的第二位置数据;电子设备根据第一位置数据和第二位置数据,确定第一二维码的外接矩形与第一图像边缘之间的目标距离;电子设备根据第一位置数据和第二位置数据,确定第一二维码的外接矩形的第一面积和第一图像的第二面积;电子设备基于目标距离、第二位置数据、第一面积以及第二面积计算第一目标放大系数。
在该实现方式中,第一位置数据包括二维码的外接矩形中、位于对角线上的两个顶点的像素坐标;第二位置数据包括第一图像中位于对角线上的两个顶点的像素坐标。本申请中,像素坐标指的是在第一像素坐标系中的坐标,第一像素坐标系为电子设备基于第一图像的顶点建立的坐标系。
在第一方面的一种实现方式中,电子设备基于目标距离、第二位置数据、第一面积以及第二面积计算第一目标放大系数,包括:电子设备根据目标距离和第二位置数据计算第一放大系数;电子设备根据第一面积和第二面积计算第二放大系数;电子设备选取第一放大系数和第二放大系数中的最小系数,作为第一目标放大系数。
在该实现方式中,第一放大系数可以为本申请的放大系数A1,第二放大系数可以为本申请的放大系数A2。
在第一方面的一种实现方式中,电子设备基于目标距离、第二位置数据、第一面积以及第二面积计算第一目标放大系数,包括:电子设备根据目标距离和第二位置数据计算第一放大系数;电子设备根据第一面积和第二面积计算第二放大系数;电子设备选取第一放大系数和第二放大系数中的最小系数,作为第三放大系数;电子设备获取第四放大系数,并选取第三放大系数和第四放大系数中的最大系数,作为第一放大系数;其中,第四放大系数用于指示电子设备上一次采集图像时所使用的放大系数。
在该实现方式中,该第四放大系数可以为手机上一个计算得到的放大系数;或者为手机当前计算得到的放大系数。
在第一方面的一种实现方式中,目标距离包括第一目标距离和第二目标距离,电子设备根据第一位置数据和第二位置数据,确定第一二维码的外接矩形与第一图像边缘之间的目标距离,包括:电子设备计算第一方向上第一二维码的外接矩形左边缘到第一图像左边缘的第一距离,以及第一二维码的外接矩形右边缘到第一图像右边缘的第二距离,并将第一距离与第二距离中的最大距离作为第一目标距离;电子设备计算第二方向上第一二维码的外接矩形上边缘到第一图像上边缘的第三距离,以及第一二维码的外接矩形下边缘到第一图像下边缘的第四距离,并将第三距离与第四距离中的做大距离作为第二目标距离;其中,第一方向与第二方向垂直。
在该实现方式中,第一距离可以为w1,第二距离可以为w2;第一目标距离可以为本申请中的Wmax=w2。第三距离可以为h1,第四距离可以为h2,第二目标距离可以为本申请中的Hmax=h2。
在第一方面的一种实现方式中,电子设备根据目标距离和第二位置数据计算第一放大系数,包括:电子设备计算第一目标距离与第一图像在第一方向上的长度距离之间的第一比值。以及第二目标距离与第一图像在第二方向上的长度距离之间的第二比值;电子设备将第一比值与第二比值之间的最小值作为第一放大系数。
第二方面,提供一种电子设备,该电子设备具有实现上述第一方面所述的方法的功能。该功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。该硬件或软件包括一个或多个与上述功能相对应的模块。
第三方面,提供一种电子设备,该电子设备包括第一应用,第一应用提供扫描二维码的功能;该电子设备包括:显示屏、存储器以及一个或多个处理器;显示屏用于显示摄像头采集到的图像或者处理器生成的图像;存储器存储有计算机程序代码,计算机程序代码包括计算机指令,当计算机指令被处理器执行时,使得电子设备执行如下步骤:响应于用户启动第一应用扫描二维码的功能,电子设备采集图像;电子设备获取采集的第一图像;第一图像包括第一二维码;电子设备识别第一二维码,并基于第一图像计算第一目标放大系数;电子设备根据第一目标放大系数采集第二图像;第二图像包括第二二维码,第二二维码在第二图像中的比例大于第一二维码在第一图像中的比例。电子设备在第一时间段内未识别到第二二维码,电子设备获取采集的第二图像,并基于第二图像计算第二目标放大系数;电子设备根据第二目标放大系数和第一应用提供的第三目标放大系数,计算第四目标放大系数;电子设备根据第四目标放大系数采集第三图像;第三图像包括第三二维码,第三二维码在第三图像中的比例大于第二二维码在第二图像中的比例。
在第三方面的一种实现方式中,当计算机指令被处理器执行时,使得电子设备还执行如下步骤:电子设备在第二时间段内未识别到第三二维码,电子设备根据第三目标放大系数采集第四图像;其中,第四图像包括第四二维码,第四二维码在第四图像中的比例大于第三二维码在第三图像中的比例。
在第三方面的一种实现方式中,当计算机指令被处理器执行时,使得电子设备还执行如下步骤:响应于用户启动第一应用扫描二维码的功能,电子设备开始计时;当计时时长超过第一阈值时,第一时间段结束,进入第二时间段;当计时时长超过第二阈值时,第二时间段结束。
在第三方面的一种实现方式中,当计算机指令被处理器执行时,使得电子设备具体执行如下步骤:电子设备获取第一二维码的第一位置数据,和第一图像的第二位置数据;电子设备根据第一位置数据和第二位置数据,确定第一二维码的外接矩形与第一图像边缘之间的目标距离;电子设备根据第一位置数据和第二位置数据,确定第一二维码的外接矩形的第一面积和第一图像的第二面积;电子设备基于目标距离、第二位置数据、第一面积以及第二面积计算第一目标放大系数。
在第三方面的一种实现方式中,当计算机指令被处理器执行时,使得电子设备具体执行如下步骤:电子设备根据目标距离和第二位置数据计算第一放大系数;电子设备根据第一面积和第二面积计算第二放大系数;电子设备选取第一放大系数和第二放大系数中的最小系数,作为第一目标放大系数。
在第三方面的一种实现方式中,当计算机指令被处理器执行时,使得电子设备具体执行如下步骤:电子设备根据目标距离和第二位置数据计算第一放大系数;电子设备根据第一面积和第二面积计算第二放大系数;电子设备选取第一放大系数和第二放大系数中的最小系数,作为第三放大系数;电子设备获取第四放大系数,并选取第三放大系数和第四放大系数中的最大系数,作为第一放大系数;其中,第四放大系数用于指示电子设备上一次采集图像时所使用的放大系数。
在第三方面的一种实现方式中,当计算机指令被处理器执行时,使得电子设备具体执行如下步骤:电子设备计算第一方向上第一二维码的外接矩形左边缘到第一图像左边缘的第一距离,以及第一二维码的外接矩形右边缘到第一图像右边缘的第二距离,并将第一距离与第二距离中的最大距离作为第一目标距离;电子设备计算第二方向上第一二维码的外接矩形上边缘到第一图像上边缘的第三距离,以及第一二维码的外接矩形下边缘到第一图像下边缘的第四距离,并将第三距离与第四距离中的做大距离作为第二目标距离;其中,第一方向与第二方向垂直。
在第三方面的一种实现方式中,当计算机指令被处理器执行时,使得电子设备具体执行如下步骤:电子设备计算第一目标距离与第一图像在第一方向上的长度距离之间的第一比值。以及第二目标距离与第一图像在第二方向上的长度距离之间的第二比值;电子设备将第一比值与第二比值之间的最小值作为第一放大系数。
第四方面,提供一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机可以执行上述第一方面中任一项所述的方法。
第五方面,提供一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机可以执行上述第一方面中任一项所述的方法。
其中,第二方面至第五方面中任一种设计方式所带来的技术效果可参见第一方面中不同设计方式所带来的技术效果,此处不再赘述。
附图说明
图1为本申请实施例提供的一种扫描二维码的界面示意图;
图2为本申请实施例提供的一种手机的结构示意图;
图3为本申请实施例提供的一种手机的软件框架示意图;
图4为本申请实施例提供的一种放大二维码的方法的流程示意图一;
图5为本申请实施例提供的一种在不同时间段计算放大系数R的示意图;
图6为本申请实施例提供的一种放大二维码的方法的流程示意图二;
图7为本申请实施例提供的二维码和图像在像素坐标系中的像素坐标示意图;
图8为本申请实施例提供的一种放大二维码的方法的流程示意图三;
图9为本申请实施例提供的一种放大二维码的方法的流程示意图四;
图10为本申请实施例提供的一种放大二维码的方法的流程示意图五;
图11为本申请实施例提供的另一种扫描二维码的界面示意图;
图12为本申请实施例提供的一种放大二维码的方法的流程示意图六;
图13为本申请实施例提供的一种芯片系统的结构示意图。
具体实施方式
为了使本领域技术人员更好地理解本申请实施例的方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请的部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
以下,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本申请实施例的描述中,除非另有说明,“多个”的含义是两个或两个以上。
本申请实施例应用于需要扫描二维码的场景。其中,需要扫描二维码的场景可以是指用户使用扫码设备扫描已有的二维码,如购物时扫描商家出示的二维码的场景。其中,该扫码设备可以是扫码枪、地铁闸机、手机等电子设备,本申请对扫码设备的类型不作具体限定。
以扫码设备为手机举例,示例性的,手机包括用于扫描二维码的应用程序,用户可以开启手机中的该应用程序以触发手机扫描二维码。示例性的,该应用程序可以是 或者其他支付应用等。
示例性的,如图1中(a)所示,当用户使用手机扫描二维码时,手机可以调用中的“扫一扫”,并显示该“扫一扫”界面进行二维码的扫描。如图1中(b)所示,若手机扫描到的二维码的尺寸较小,则手机在扫描过程中需要将该二维码放大,以便于识别该二维码。
可以理解的是,本申请实施例所提到的“扫一扫”具备对二维码扫描的功能,“扫一扫”也可以有其他的名称,“扫一扫”这个名称并不构成对其功能的限定,在此进行统一说明,以下不再赘述。
在一些实施例中,若手机未具备放大二维码的功能,则不能进行二维码放大,导致二维码识别困难。在另一些实施例中,手机可以调用对应应用程序,如应用预先设置的放大系数,对该二维码进行放大。但是,由于应用程序预先设置的放大系数为固定的数值,因此针对于不同尺寸的二维码,会存在放大效果不佳(如过大或过小)的问题。示例性的,如图1中(c)所示,手机采用应用程序预先设置的放大系数对二维码进行放大后,显示的二维码仍然较小,导致手机还是不能识别到该二维码。这种情况下,手机会再次采用应用程序预先设置的放大系数对二维码进行放大,直到手机能够识别到该二维码。这样一来,就会导致手机识别二维码的时间较长,从而导致二维码识别缓慢。
针对于上述技术问题,本申请提供了一种放大二维码的方法,当电子设备扫描二维码时,电子设备首先采集一帧图像,然后基于二维码的位置,以及图像的位置可以得到该二维码对应的放大系数;进而,电子设备基于该放大系数对二维码进行放大。由于该放大系数是电子设备基于实时采集到的一帧图像中,二维码的位置和图像的位置计算得到的,因此可以将二维码放大至图像中合适的位置,从而可以增强扫码的快速性和准确性。
示例性的,本申请实施例提供一种放大二维码的方法,可以应用于提供扫描二维码的功能的电子设备中,该电子设备可以是手机、扫码枪、地铁闸机、平板电脑、智能手表、桌面型、膝上型、手持计算机、笔记本电脑、车载设备、超级移动个人计算机(ultra-mobilepersonal computer,UMPC)、上网本,以及蜂窝电话、个人数字助理(personal digitalassistant,PDA)、增强现实(augmented reality,AR)\虚拟现实(virtual reality,VR)设备等,本申请实施例对该电子设备的具体形态不作特殊限制。
以上述电子设备为手机为例,请参考图2,为本申请实施例提供的一种手机100的结构示意图。如图2所示,手机100可以包括:处理器110,外部存储器接口120,内部存储器121,通用串行总线(universal serial bus,USB)接口130,充电管理模块140,电源管理模块141,电池142,天线1,天线2,移动通信模块150,无线通信模块160,音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,传感器模块180,定位模块181,按键190,马达191,指示器192,摄像头193,显示屏194,以及用户标识模块(subscriberidentification module,SIM)卡接口195等。
可以理解的是,本实施例示意的结构并不构成对手机100的具体限定。在另一些实施例中,手机100可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processingunit,GPU),图像信号处理器(image signal processor,ISP),控制器,存储器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
控制器可以是手机100的神经中枢和指挥中心。控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器110的等待时间,因而提高了系统的效率。
在一些实施例中,处理器110可以包括一个或多个接口。可以理解的是,本实施例示意的各模块间的接口连接关系,只是示意性说明,并不构成对手机100的结构限定。在另一些实施例中,手机100也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。
充电管理模块140用于从充电器接收充电输入。其中,充电器可以是无线充电器,也可以是有线充电器。充电管理模块140为电池142充电的同时,还可以通过电源管理模块141为电子设备供电。
电源管理模块141用于连接电池142,充电管理模块140与处理器110。电源管理模块141接收电池142和/或充电管理模块140的输入,为处理器110,内部存储器121,外部存储器,显示屏194,摄像头193,和无线通信模块160等供电。
手机100的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。
手机100通过GPU,显示屏194,以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏194和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
显示屏194用于显示图像,视频等。该显示屏194包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,LCD),有机发光二极管(organic light-emittingdiode,OLED),有源矩阵有机发光二极体或主动矩阵有机发光二极体(active-matrixorganic light emitting diode,AMOLED),柔性发光二极管(flex light-emittingdiode,FLED),Mini-LED,Micro-OLED,Micro-OLED,量子点发光二极管(quantum dot lightemitting diodes,QLED)等。
手机100可以通过ISP,摄像头193,视频编解码器,GPU,显示屏194以及应用处理器等实现拍摄功能。
ISP用于处理摄像头193反馈的数据。例如,拍照时,打开快门,光线通过镜头被传递到摄像头感光元件上,光信号转换为电信号,摄像头感光元件将所述电信号传递给ISP处理,转化为肉眼可见的图像。ISP还可以对图像的噪点,亮度,颜色进行算法优化。ISP还可以对拍摄场景的曝光,色温等参数优化。在一些实施例中,ISP可以设置在摄像头193中。
摄像头193用于捕获静态图像或视频。物体通过镜头采集光学图像投射到感光元件。感光元件可以是电荷耦合器件(charge coupled device,CCD)或互补金属氧化物半导体(complementary metal-oxide-semiconductor,CMOS)光电晶体管。感光元件把光信号转换成电信号,之后将电信号传递给ISP转换成数字图像信号。ISP将数字图像信号输出到DSP加工处理。DSP将数字图像信号转换成标准的RGB,YUV等格式的图像信号。
数字信号处理器用于处理数字信号,除了可以处理数字图像信号,还可以处理其他数字信号。例如,当电子设备在频点选择时,数字信号处理器用于对频点能量进行傅里叶变换等。
视频编解码器用于对数字视频压缩或解压缩。手机100可以支持一种或多种视频编解码器。这样,电子设备可以播放或录制多种编码格式的视频,例如:动态图像专家组(moving picture experts group,MPEG)1,MPEG2,MPEG3,MPEG4等。
NPU为神经网络(neural-network,NN)计算处理器,通过借鉴生物神经网络结构,例如借鉴人脑神经元之间传递模式,对输入信息快速处理,还可以不断的自学习。通过NPU可以实现电子设备的智能认知等应用,例如:图像识别,人脸识别,语音识别,文本理解等。
手机100可以通过音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,以及应用处理器等实现音频功能。例如音乐播放,录音等。
音频模块170用于将数字音频信息转换成模拟音频信号输出,也用于将模拟音频输入转换为数字音频信号。音频模块170还可以用于对音频信号编码和解码。扬声器170A,也称“喇叭”,用于将音频电信号转换为声音信号。受话器170B,也称“听筒”,用于将音频电信号转换成声音信号。麦克风170C,也称“话筒”,“传声器”,用于将声音信号转换为电信号。耳机接口170D用于连接有线耳机。
外部存储器接口120可以用于连接外部存储卡,例如Micro SD卡,实现扩展电子设备的存储能力。外部存储卡通过外部存储器接口120与处理器110通信,实现数据存储功能。例如将音频,视频等文件保存在外部存储卡中。
内部存储器121可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。处理器110通过运行存储在内部存储器121的指令,从而执行电子设备的各种功能应用以及数据处理。例如,在本申请实施例中,处理器110可以通过执行存储在内部存储器121中的指令,内部存储器121可以包括存储程序区和存储数据区。
其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储电子设备使用过程中所创建的数据(比如音频数据,电话本等)等。此外,内部存储器121可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flashstorage,UFS)等。
按键190包括开机键,音量键等。马达191可以用于来电振动提示,也可以用于触摸振动反馈。指示器192可以是指示灯,可以用于指示充电状态,电量变化,也可以用于指示消息,未接来电,通知等。
SIM卡接口195用于连接SIM卡。SIM卡可以通过插入SIM卡接口195,或从SIM卡接口195拔出,实现和电子设备的接触和分离。电子设备可以支持1个或N个SIM卡接口,N为大于1的正整数。SIM卡接口195可以支持Nano SIM卡,Micro SIM卡,SIM卡等。
以下实施例中的方法均可以在具有上述硬件结构的电子设备中实现。以下实施例中,以电子设备为手机100为例,介绍本申请实施例的方法。
图3是本申请实施例的手机100的软件框图。
手机100的软件系统可以采用分层架构、事件驱动架构、微核架构、微服务架构或云架构。本申请实施例以分层架构的系统为例,示例性的说明手机100的软件结构。
分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,将系统从上至下分为:应用程序层、应用程序框架层、硬件抽象层(hardware abstraction layer,HAL)以及驱动层。应理解,本文以系统举例来说明,在其他操作系统中(例如/>系统等),只要各个功能模块实现的功能和本申请的实施例类似也能实现本申请的方案。
应用程序层可以包括一系列应用程序包。
如图3所示,应用程序层中可以包括相机,图库,日历,通话,地图,导航,蓝牙,音乐,视频,短信息等应用程序。
在本申请实施例中,应用程序层中可以安装具有扫描二维码功能的应用,例如, 等应用。当用户需要扫描二维码时,手机可以调用/>或/>应用中的“扫一扫”,并显示“扫一扫”界面进行二维码扫描。
应用程序框架层为应用程序层的应用程序提供应用编程接口(applicationprogramming interface,API)和编程框架。应用程序框架层包括一些预先定义的函数。
如图3所示,应用程序框架层可以包括窗口管理器,内容提供器,视图系统,资源管理器,通知管理器等,本申请实施例对此不做任何限制。
例如,上述窗口管理器用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状态栏,锁定屏幕,截取屏幕等。上述内容提供器用来存放和获取数据,并使这些数据可以被应用程序访问。所述数据可以包括视频,图像,音频,拨打和接听的电话,浏览历史和书签,电话薄等。上述视图系统可用于构建应用程序的显示界面。每个显示界面可以由一个或多个控件组成。一般而言,控件可以包括图标、按钮、菜单、选项卡、文本框、对话框、状态栏、导航栏、微件(widget)等界面元素。上述资源管理器为应用程序提供各种资源,比如本地化字符串,图标,图片,布局文件,视频文件等等。上述通知管理器使应用程序尅在状态栏中显示通知信息,可以用于传达告知类型的消息,可以短暂停留后自动消失,无需用户交互。比如通知管理器被用于告知下载完成,消息提醒等。通知管理器还可以是以图表或者滚动条文本形式出现在系统顶部状态栏的通知,例如后台运行的应用程序的通知,还可以是以对话窗口形式出现在屏幕上的通知。例如在状态栏提示文本信息,发出提示音,振动,指示灯闪烁等。
硬件抽象层是位于内核层与硬件之间的接口层,可以用于将硬件抽象化。在一些实施例中,硬件抽象层包括硬件抽象层接口定义语言(hardware abstraction layerinterface definition language,HIDL)接口。其中,硬件抽象层可以包括:Camera HAL,Audio HAL,Wi-Fi HAL等。
驱动层位于硬件抽象层之下,是硬件和软件之间的层。驱动层至少包括显示驱动,摄像头驱动,音频驱动,传感器驱动等,本申请实施例对此不做任何限制。
本申请实施例结合图3介绍手机中各个软件层实现本申请实施例的方法的工作原理。
在本申请实施例中,如图3所示,以应用举例,可在应用程序框架层中设置有相机服务(Camera Service)。/>应用可通过调用预设的API启动Camera Service。Camera Service在运行过程中可以与硬件抽象层(HAL)中的Camera HAL交互。其中,CameraHAL负责与手机中实现扫描二维码功能的硬件设备(例如摄像头)进行交互,Camera HAL一方面隐藏了相关硬件设备的实现细节(例如具体的放大系数的算法),另一方面可向Android系统提供调用相关硬件设备的接口。
示例性的,当应用启动扫描二维码的功能时,/>应用可将相关控制命令(例如扫码命令,或称扫码标记位)发送至Camera Service。Camera Service可将接收到的控制命令发送至Camera HAL,使得Camera HAL可根据接收到的控制命令调用驱动层中的摄像头驱动,由摄像头驱动来驱动摄像头等硬件设备响应该控制命令采集图像。例如,摄像头可按照一定的帧率,将采集到的图像通过摄像头驱动传递给Camera HAL。其中,控制命令在操作系统内容的传递过程可参见图3中扫码命令的具体传递过程。
其中,基于扫码命令由摄像头驱动传递给Camera HAL的多帧图像可以组成预览流,Camera HAL对预览流进行处理后可得到检测流。其中,预览流用于显示在扫码界面上。示例性的,Camera HAL将预览流上报给应用,/>应用接收到预览流后,将该预览流显示在扫码界面上。
检测流用于计算摄像头采集的图像的放大系数。示例性的,一方面,Camera HAL利用检测流中的图像计算放大系数(或称放大系数A,其中放大系数A的具体计算过程可参考后续实施例中对应内容的描述)。另一方面,Camera HAL可将检测流通过Camera Service上报给应用,/>应用接收到检测流后,识别检测流中的图像的二维码;并将预设放大系数(或称放大系数B)通过Camera Service下发至Camera HAL。
需要说明的是,上述预设放大系数可以是应用基于摄像头采集的图像实时计算的,也可以是/>应用预先设定的固定系数,本申请实施例对此不做限定。
进一步的,Camera HAL将计算到的放大系数A,和/或,获取到的放大系数B下发至摄像头驱动,由摄像头驱动根据放大系数A和/或放大系数B驱动摄像头继续采集图像,并对后续采集到的图像中的二维码进行放大。
示例性的,摄像头驱动可以采用光学变焦的方式对后续采集到的图像中的二维码进行放大。或者,摄像头驱动也可以采用数字变焦的方式对后续采集到的图像中的二维码进行放大。其中,光学变焦指的是摄像头驱动根据放大系数A和/或放大系数B,驱动摄像头中的马达移动,以改变摄像头中的镜头与图像之间的距离(即焦距),从而对后续采集到的图像中的二维码进行放大。数字变焦指的是摄像头驱动改变图像中的二维码的分辨率,将图像中的二维码的每个像素面积增大,使得二维码的面积在图像中变大,从而达到放大二维码的效果。
可以理解的是,摄像头驱动根据放大系数A和/或放大系数B采集到的多帧图像可以组成新的预览流;其中,该新的预览流中的图像的二维码被放大。后续,摄像头驱动将新的预览流上报给应用,/>应用接收到预览流后,将该新的预览流显示在扫码界面上,以便于/>应用识别该二维码。
在一些实施例中,结合图3,如图4所示,Camera HAL接收到由摄像头驱动上报的预览流后,对该预览流进行处理得到检测流。而后,Camera HAL一方面根据检测流计算放大系数A;另一方面,Camera HAL从应用中获取放大系数B。后续,Camera HAL将放大系数A和放大系数B传输至智能决策算法中,由智能决策算法根据放大系数A和/或放大系数B得到最终的放大系数R。进一步的,Camera HAL将该放大系数R传递给摄像头驱动,由摄像头驱动根据该放大系数R驱动摄像头采集图像,并对采集到的图像中的二维码进行放大。
应理解,本申请实施例中,Camera HAL可将放大系数A和放大系数B传输至智能决策算法中,由智能决策算法根据放大系数A和放大系数B得到最终的放大系数R。其中,智能决策算法可以设置在手机软件系统中的任何一层,如智能决策算法可以设置在硬件抽象层中的Camera HAL中;或者,智能决策算法可以设置在应用程序框架层中的Camera Service中,本申请实施例对此不做具体限制。
示例性的,智能决策算法可根据扫描时间确定不同的放大系数R。例如,若扫描时间在第一时间段内,智能决策算法屏蔽掉放大系数B,将放大系数A作为放大系数R;相应的,若扫描时间在第二时间段内,智能决策算法采用融合策略将放大系数A和放大系数B进行融合得到放大系数R;相应的,若扫描时间在第三时间段内,智能决策算法屏蔽掉放大系数A,将放大系数B作为放大系数R。
其中,第一时间段小于或等于第一阈值,第二时间段大于第一阈值、且小于或等于第二阈值,第三时间段大于第二阈值。需要说明的是,本申请对于第一阈值、第二阈值不作具体限定,以实际设置为准。以第一阈值为5s,第二阈值为10s举例,示例性的,第一时间段可以为:T1≤5s;第二时间段可以为:5s<T2≤10s;第三时间段可以为:T3>10s。
示例性的,智能决策算法根据扫描时间输出放大系数R的对应关系可以如下述表1所示:
表1
扫描时间T(秒/s) | 放大系数R |
T1≤5s | R=A |
5s<T2≤10s | R=(A+B)/2 |
T3>10s | R=B |
需要说明的是,上述表1仅仅为本申请实施例中的一种示例,并不构成对本申请的限定。在本申请实施例中,智能决策算法根据扫描时间输出放大系数R的处理流程,可以参考以下实施例中的详细介绍,这里不予赘述。
在一些实施例中,当Camera HAL接收到扫码命令时,Camera HAL可触发手机启动定时器开始计时,当定时器未超过第一时长时,智能决策算法输出放大系数为R=A;当定时器超过第一时长时,智能决策算法输出放大系数为R=(A+B)/2;当定时器超过第二时长时,智能决策算法输出放大系数为R=B。示例性的,定时器的第一时长可以设置为5s,第二时长可以设置为10s。
可以理解的是,检测流包括摄像头采集的多帧图像。在一些实施例中,Camera HAL基于每一帧图像计算一个放大系数A。在另一些实施例中,Camera HAL每隔预设帧数计算一个放大系数A。
以Camera HAL基于每一帧图像计算一个放大系数A举例,示例性的,Camera HAL会将基于每一帧图像计算的放大系数A传递至智能决策算法中。然而,为了降低功耗,在一些实施例中,Camera HAL可以每隔预设帧数向智能决策算法传递放大系数A。需要说明的是,本申请对于预设帧数不做具体限定,以实际设置为准。示例性的,预设帧数可以为20帧。
以Camera HAL每隔20帧向智能决策算法传递放大系数A举例,示例性的,假设摄像头每一秒采集30帧图像,那么,在第一时间段(即T1≤5s)内,摄像头最多采集的是第1帧-第150帧的图像;在第二时间段(即5<T2≤10s)内,摄像头最多采集的是第151帧-第300帧的图像;在第三时间段(T3>10s)内,摄像头最多采集的是第301帧之后的图像。
在此基础上,如图5所示,在第一时间段内,摄像头采集第1帧图像后,Camera HAL基于第1帧图像的检测流计算放大系数A1,并将该放大系数A1传递给智能决策算法中。相应的,摄像头采集第21帧图像后,Camera HAL基于第21帧图像的检测流计算放大系数A21,并将该放大系数A1传递给智能决策算法中。依次类推,直到摄像头采集第141帧图像后,Camera HAL基于第141帧图像的检测流计算放大系数A141,并将该放大系数A141传递给智能决策算法中。
相应的,在第一时间段内,智能决策算法每接收一次Camera HAL传递的放大系数A,智能决策算法会将放大系数A作为放大系数R,并将该放大系数R传递给预览流,以对该预览流中的二维码进行放大。例如,智能决策算法接收Camera HAL传递的放大系数A1后,将该放大系数A1作为放大系数R。又如,智能决策算法接收Camera HAL传递的放大系数A21后,将该放大系数A21作为放大系数R。又如,智能决策算法接收Camera HAL传递的放大系数A141后,将该放大系数A141作为放大系数R。
应理解,Camera HAL每隔20帧将计算的放大系数A传递至智能决策算法,在第一时间段内,Camera HAL最后一次向智能决策算法传递的放大系数为A141。在此基础上,CameraHAL下一次向智能决策算法传递的放大系数为A161。
然而,由于在第二时间段内智能决策算法确定的放大系数R=(A+B)/2,即将放大系数A和放大系数B融合得到放大系数R,与在第一时段内确定放大系数R的方法不同。因此,在一些实施例中,在第二时间段内,智能决策算法可以在第151帧开始确定放大系数R,并将该放大系数R传递给预览流,以对预览流中的二维码进行放大。基于此,本申请实施例中,在第二时间段内,智能决策算法首次确定放大系数R时,可以采用最后一次接收到的放大系数A。其中,最后一次接收到的放大系数A为Camera HAL在第一时间段内最后一次向智能决策算法传递的放大系数A141。
换言之,本申请实施例中,在第二时间段内,智能决策算法首次确定的放大系数为R=(A141+B)/2。
相应的,在第二时间段内,摄像头采集第161帧图像后,Camera HAL基于第161帧图像的检测流计算放大系数A161,并将该放大系数A161传递给智能决策算法中。也就是说,在第二时间段内,智能决策算法首次接收到的放大系数为A161。在此基础上,智能决策算法第二次确定的放大系数为R=(A161+B)/2。
需要说明的是,在第二时间段内智能决策算法确定放大系数R时所用到的放大系数A可以称为第二目标放大系数,即第二目标放大系数为手机在所述第一时间段内、每隔预设帧数对二维码进行放大时所采用的放大系数。示例性的,第二目标放大系数可以是手机在第一时间段内、最后一次对二维码进行放大时所采用的放大系数,即该第二目标放大系数可以为上述放大系数A141。
仍如图5所示,在第三时间段内,智能决策算法确定出的放大系数R=B,即CameraHAL停止计算放大系数A,无需向智能决策算法传递放大系数A。
本申请实施例提供一种放大二维码的方法,该方法可以应用于手机,该手机能够提供扫描二维码的功能,且该手机包括摄像头。如图6所示,该方法可以包括S201-S204。
S201、响应于用户启动扫描二维码的功能,手机通过摄像头采集一帧第一图像。
示例性的,如图1中(a)所示,响应于用户对“扫一扫”按钮的操作,手机启动扫描二维码的功能,并通过摄像头采集如图1中(b)所示的一帧第一图像。
示例性的,结合图3所示,响应于用户对应用中的“扫一扫”按钮的操作,应用可将扫码命令发送至Camera Service。Camera Service可将接收到的扫码命令发送至Camera HAL,使得Camera HAL可根据接收到的扫码命令调用驱动层中的摄像头驱动,由摄像头驱动来驱动摄像头等硬件设备响应该扫码命令采集图像,即采集一帧第一图像。示例性的,摄像头采集的多帧图像可以组成上述图4所示的检测流和预览流。
S202、手机获取二维码在第一图像中的第一位置数据,以及第一图像的第二位置数据。该第一位置数据可以包括二维码的外接矩形中、位于对角线上的两个顶点的像素坐标,该第二位置数据包括第一图像中位于对角线上的两个顶点的像素坐标。
本申请中,像素坐标指的是在第一像素坐标系中的坐标,该第一像素坐标系为手机基于第一图像的顶点建立的坐标系。
需要说明的是,二维码的外接矩形是指以二维坐标表示的二维码的最大范围,即以给定的二维码的形状中、各顶点中的最大横坐标,最小横坐标,最大纵坐标,最小纵坐标定下边界的矩形。其中,外接矩形也可以称为最小外接矩形、最小边界矩形、最小包含矩形或最小外包矩形等。
在一些实施例中,手机可通过人工智能(artificial intelligence,AI)算法获取二维码在第一图像中的第一位置数据、以及第一图像的第二位置数据;或者,手机可以采用图像处理算法获取二维码在第一图像中的第一位置数据、以及第一图像的第二位置数据。本申请对于获取第一位置数据和第二位置数据的方式不做具体限定。
请参考图7,为手机基于第一图像的顶点建立的第一像素坐标系(u、v)。示例性的,如图7所示,手机可以基于建立的第一像素坐标系(u、v),获取二维码的外接矩形中、位于对角线上的两个顶点在第一像素坐标系中的像素坐标,从而得到二维码在第一图像中的第一位置数据。相应的,手机也可以基于建立的第一像素坐标系(u、v),获取第一图像中、位于对角线上的两个顶点在第一像素坐标系中的像素坐标,从而得到第一图像的第二位置数据。
需要说明的是,二维码在第一图像中的第一位置数据可以是二维码的外接矩形中、任意一条对角线上的两个顶点在第一像素坐标系中的像素坐标;相应的,第一图像的第二位置数据可以是第一图像中、任意一条对角线上的两个顶点在第一像素坐标系中的像素坐标,本申请实施例对此不做限定。
示例性的,如图7所示,二维码的外接矩形中、位于对角线上的两个顶点在第一像素坐标系中的像素坐标分别可以为(1500,200)和(300,800)。第一图像中位于对角线上的两个顶点在第一像素坐标系中的像素坐标分别可以为(2000,0)和(0,1500)。
S203、手机根据第一位置数据和第二位置数据计算第一目标放大系数。
示例性的,在S202中,手机的Camera HAL接收到检测流后,针对于每一帧图像(即每一帧第一图像),手机的Camera HAL会获取该一帧第一图像中的二维码的第一位置数据,以及第一图像的第二位置数据。在此基础上,在S203中,针对于每一帧第一图像,手机的Camera HAL会根据每一帧第一图像对应的第一位置数据和第二位置数据计算第一目标放大系数。
其中,本申请实施例这里介绍由一帧第一图像计算第一目标放大系数的方法。示例性的,如图8所示,S203具体可以包括S2031-S2033。
S2031、手机根据二维码的外接矩形与第一图像边缘之间的距离,以及第一图像的长度和宽度计算第一放大系数。
示例性的,手机计算第一放大系数的过程可以包括Sa-Sc。
Sa:手机根据二维码在第一图像中的第一位置数据、以及第一图像的第二位置数据分别计算二维码的外接矩形的四条边与第一图像边缘的距离。
示例性的,手机可以计算第一方向上二维码的外接矩形左边缘到第一图像左边缘的第一距离(如w1),以及二维码的外接矩形右边缘到第一图像右边缘的第二距离(如w2)。相应的,手机可以计算第二方向上二维码的外接矩形上边缘到第一图像上边缘的第三距离(如h1),以二维码的外接矩形下边缘到第一图像下边缘的第四距离(如h2)。其中,第一方向与第二方向垂直。
如图7所示,该第一方向可以为第一像素坐标系中的u方向,第二方向可以为第一像素坐标系中的v方向。进而,在本申请实施例中,上述左边缘与右边缘、上边缘与下边缘等指示的方位或位置关系为基于图7所示的方位或位置关系,该左边缘与右边缘是在第一方向上相对的两个方位;该上边缘与下边缘是在第二方向上相对的两个方位。
例如,如图7所示,二维码在第一图像中的第一位置数据,指示了二维码的外接矩形中,位于对角线上的两个顶点在第一像素坐标系中的像素坐标分别为(1500,200)和(300,800)。第一图像的第二位置数据,指示了第一图像中位于对角线上的两个顶点在第一像素坐标系中的像素坐标分别为(2000,0)和(0,1500)。基于图7所示的像素坐标,手机可以得到二维码的外接矩形的四条边与第一图像边缘的距离分别为:w1=300、w2=500、h1=200、h2=500。
可以理解的是,w1和w2用于指示二维码的外接矩形与第一图像边缘的长度距离,h1和h2用于指示二维码的外接矩形与第一图像边缘的宽度距离。
Sb:手机选取长度距离中的最大值,以及宽度距离中的最大值。
示例性的,长度距离中的最大值可以采用如下表达式:Wmax=max(w1,w2);宽度距离中的最大值可以采用如下表达式:Hmax=max(h1,h2)。例如,基于步骤Sa计算得到的w1、w2、h1和h2可知,长度距离中的最大值Wmax=w2,宽度距离中的最大值Hmax=h2。
Sc:手机计算第一图像的长度与长度距离中最大值的比值、以及第一图像的宽度与宽度距离中最大值的比值,并选取比值中的最小值作为第一放大系数。
示例性的,基于图7所示的第一图像中位于对角线上的两个顶点的像素坐标,可以得到第一图像的长度W=2000,H=1500。
示例性的,第一放大系数可以采用如下表达式:A1=min(W/Wmax,H/Hmax);其中,W/Wmax表示第一图像的长度与长度距离中最大值的比值;H/Hmax表示第一图像的宽度与宽度距离中最大值的比值;A1表示第一放大系数。
S2032、手机根据二维码的外接矩形的第一面积、以及第一图像的第二面积计算第二放大系数。
示例性的,在S2031中,手机可以得到二维码的外接矩形的四条边与第一图像边缘的距离、以及第一图像的长度和宽度。例如,如图7所示,二维码的外接矩形的四条边与第一图像边缘的距离分别为w1、w2、h1和h2;第一图像的长度和宽度分别为W和H。在此基础上,手机计算第二放大系数的过程可以包括S1-S3。
S1:手机根据二维码的外接矩形的四条边与第一图像边缘的距离,以及第一图像的长度和宽度计算二维码的外接矩形的长度和宽度。
示例性的,二维码的外接矩形的长度可以采用如下表达式:Wq=W-w1-w2;其中,Wq表示二维码的外接矩形的长度;W表示第一图像的长度;w1和w2表示二维码的外接矩形与第一图像边缘的长度距离。
相应的,二维码的外接矩形的宽度可以采用如下表达式:Hq=H-h1-h2;其中,Hq表示二维码的外接矩形的宽度;H表示第一图像的宽度;h1和h2表示二维码的外接矩形与第一图像的宽度距离。
S2:手机计算二维码的外接矩形的第一面积、以及第一图像的第二面积。
示例性的,在S1中,手机已经计算出二维码的外接矩形的长度和宽度;在此基础上,二维码的外接矩形的第一面积可以采用如下表达式:Sq=Wq×Hq;其中,Sq表示第一面积;Wq表示二维码的外接矩形的长度;Hq表示二维码的外接矩形的宽度。
相应的,第一图像的第二面积可以采用如下表达式:S=W×H;其中,S表示第二面积;W表示第一图像的长度;H表示第一图像的宽度。
S3:手机根据第一面积和第二面积计算第二放大系数。
示例性的,手机可以计算第一面积与第二面积的比值,得到第二放大系数。例如,第二放大系数可以采用如下表达式:A2=Sq/S;其中,A2表示第二放大系数;Sq表示第一面积;S表示第二面积。
S2033、手机根据第一放大系数和第二放大系数计算第一目标放大系数。
在一些实施例中,手机可以选取第一放大系数和第二放大系数中的最小系数,作为第一目标放大系数。例如,第一目标放大系数可以采用如下表达式:A=min(A1,A2);其中,A表示第一目标放大系数;A1表示第一放大系数;A2表示第二放大系数。
在另一些实施例中,手机选取第一放大系数和第二放大系数中的最小系数,作为第三放大系数,然后手机获取第四放大系数,并选取第三放大系数和第四放大系数中的最大系数,作为第一目标放大系数。
其中,第四放大系数指的是手机上一次对二维码进行放大时采用的放大系数。示例性的,该第四放大系数可以为手机上一个计算得到的放大系数;或者为手机当前计算得到的放大系数。
示例性的,第三放大系数可以采用如下表达式:A3=min(A1,A2);其中,A3表示第三放大系数;A1表示第一放大系数;A2表示第二放大系数。第一目标放大系数可以采用如下表达式:A=max(A3,A');其中,A表示第一目标放大系数;A3表示第三放大系数;A'表示第四放大系数。
在上述实施例中,手机将上一次对二维码进行放大时采用的放大系数A'和本次计算得到的第三放大系数A3之间的最大系数,作为第一目标放大系数,然后采用第一目标放大系数对二维码进行放大,能够减少手机放大二维码的过程中产生的放大波动。
S204、手机采用第一目标放大系数对二维码进行放大。
示例性的,如图3所示,手机中的Camera HAL将第一目标放大系数下发至摄像头驱动,由摄像头驱动根据第一目标放大系数驱动摄像头继续采集图像,并对后续采集到的图像中的二维码进行放大。
后续,摄像头驱动根据第一目标放大系数驱动摄像头继续采集图像,摄像头驱动后续采集的多帧图像可以组成新的预览流;也就是说,该新的预览流中图像的二维码已经被放大。进一步的,摄像头驱动将该新的预览流上报至给应用,/>应用接收到预览流后,将该新的预览流显示在扫码界面上,以便于/>应用识别该二维码。
在一些实施例中,手机可以基于摄像头采集的每一帧图像,计算一个第一目标放大系数。然后手机基于每一帧图像计算的第一目标放大系数,对后续摄像头采集的每一帧图像中的二维码进行放大。示例性的,手机基于摄像头采集的第1帧图像,计算第一目标放大系数;而后,手机根据该第一目标放大系数采集第2帧图像,并对该第2帧图像中的二维码进行放大;相应的,手机基于摄像头采集的第2帧图像,计算下一个第一目标放大系数。
在另一些实施例中,手机基于摄像头采集的每一帧图像,计算一个第一目标放大系数。然后手机每隔预设帧对后续摄像头采集的每一帧图像中的二维码进行放大。示例性的,手机基于摄像头采集的第1帧图像,计算第一目标放大系数;而后,手机根据该第一目标放大系数采集第2帧图像,并对该第2帧图像中的二维码进行放大。相应的,手机基于摄像头采集的第21帧图像,计算第一目标放大系数,而后,手机根据该第一目标放大系数采集第22帧图像,并对该第22帧图像中的二维码进行放大。
示例性的,以预设帧数为20帧举例,例如,摄像头采集第1帧第一图像后,手机基于第1帧第一图像计算放大系数A1。而后,手机采用放大系数A1采集第2帧图像,并对该第2帧图像中的二维码进行放大。相应的,摄像头采集第21帧第一图像后,手机基于第21帧第一图像计算放大系数A21。而后,手机采用放大系数A21采集第22帧图像,并对该第22帧图像中的二维码进行放大。如此,在本申请实施例中,手机可以每隔20帧对二维码放大一次,直到手机成功识别到该二维码。
可以看出,本方案中,手机针对于摄像头采集到的每一帧第一图像,计算每一帧第一图像对应的第一目标放大系数。并且,手机在计算第一目标放大系数时是根据第一图像中、二维码在第一图像中的第一位置数据,以及第一图像的第二位置数据得到的,使得计算出的第一目标放大系数较为准确,可以提升手机在一定时间内的扫码效果。综上所述,采用本申请实施例的方法,在手机扫描二维码的过程中,可以增强扫码的快速性和准确性。
在上述实施例中,手机通过摄像头采集到一帧第一图像后,手机可以基于二维码的外接矩形在第一图像中的第一位置数据、以及第一图像的第二位置数据计算第一目标放大系数,并采用第一目标放大系数(即上述放大系数A)对二维码进行放大。进一步的,在第一应用(如应用)提供有预设放大系数(即上述放大系数B,或称第三目标放大系数)的情况下,为了提升手机在一定时间内的扫码效率,本申请实施例中,手机还可以获取第一应用提供的放大系数B,并基于手机计算出的放大系数A,采用智能决策引擎算法得到最优的放大系数(即上述放大系数R,或称第三目标放大系数),然后采用最优的放大系数对二维码进行放大。
示例性的,如图9所示,手机通过摄像头采集到一帧第一图像后,手机基于二维码的外接矩形在第一图像中的第一位置数据、以及第一图像的第二位置数据计算放大系数A,并获取第一应用提供的放大系数B。而后,手机基于放大系数A和放大系数B采用智能决策引擎算法得到放大系数R,并采用放大系数R对二维码进行放大。其中,在手机扫描二维码的过程中,智能决策算法可以在不同扫描时间段内采用不同的策略得到放大系数R。
例如,仍如图9所示,手机在扫描二维码的过程中,在第一时间段内手机可以采用优先策略得到放大系数R;若手机在第一时间段内未识别出二维码,则在第二时间段内继续采用融合策略得到放大系数R;若手机在第二时间段内未识别出二维码,则在第三时间段内继续采用节能策略得到放大系数R。
其中,优先策略指的是手机屏蔽掉放大系数B,将放大系数A作为放大系数R。融合策略指的是手机将放大系数A和放大系数B进行融合,得到放大系数R(例如R=(A+B)/2)。节能策略指的是手机停止计算放大系数A,将放大系数B作为放大系数R。
也就是说,本申请实施例中,如图10所示,手机在扫描二维码的过程中,在第一时间段先采用放大系数A对二维码进行放大。若手机在第一时间段内未识别出二维码,则在第二时间段内继续采用放大系数(A+B)/2对二维码进行放大。若手机在第二时间段内未识别出二维码,则在第三时间段内继续采用放大系数B对二维码进行放大。
应理解,若手机在第三时间段内手机仍未识别出二维码,则手机在扫描界面显示扫描未成功的结果。其中,扫描未成功的原因可能包括:二维码缺失、二维码模糊或者网络异常等,本申请对此不做限定。
需要说明的是,经过多次验证,手机在扫描二维码的过程中,采用放大系数A对二维码进行放大后,手机成功识别二维码的概率能够达到80%。采用放大系数(A+B)/2对二维码进行放大后,手机成功识别二维码的概率能够达到90%。
如此,采用本申请实施例的方法,手机在扫描二维码的过程中,在第一时间段内采用放大系数A对二维码进行放大,能够增强扫码的快速性和准确性;在第二时间段内采用放大系数(A+B)/2对二维码进行放大,能够进一步增强扫码的快速性和准确性;在第三时间段内手机停止计算放大系数A,并采用放大系数B对二维码进行放大,能够达到降低功耗的目的。
示例性的,采用本申请实施例的方法,在手机扫描二维码的过程中,如图11中(a)所示,若二维码的尺寸较小,则手机能够快速的将二维码放大到合适的位置,如图11中(b)所示的位置,从而使得手机快速的识别到二维码,增强了扫码的快速性和准确性。
需要强调的是,若手机在第一时间段内未识别出二维码,则手机在第二时间段采用放大系数(A+B)/2对二维码进行放大。可以理解的是,放大系数(A+B)/2是由手机根据放大系数A和放大系数B进行融合后得到的。其中,在第二时间段内手机首次将放大系数A和放大系数B进行融合时所用到的放大系数A为:手机在第一时间段内,最后一次对二维码进行放大时所采用的放大系数。
示例性的,结合图5所示,手机在第一时间段内最后一次对二维码进行放大时所采用的放大系数为A141,因此在第二时间段内手机首次确定出的放大系数R=(A141+B)/2。
本申请实施例提供一种放大二维码的方法,该方法可以应用于上述电子设备中,该电子设备例如可以为手机。其中,手机包括第一应用,该第一应用提供扫描二维码的功能。示例性的,如图12所示,该方法可以包括如下步骤:S301-S307。
S301、响应于用户启动第一应用扫描二维码的功能,手机采集图像。
示例性的,该第一应用可以为第三方应用,该第一应用例如可以为上述应用。例如,如图1中(a)所示,响应于用户对/>应用中“扫一扫”按钮的操作,/>应用启动扫描二维码的功能。
进一步的,如图3所示,应用启动扫描二维码的功能后,/>应用会将扫码命令通过Camera Service、Camera HAL下发至摄像头驱动,由摄像头驱动摄像头开始采集图像。
S302、手机获取采集的第一图像;第一图像包括第一二维码。
示例性的,该第一图像可以为上述第1帧图像,即摄像头按照一定帧率采集到的第1帧图像。其中,该第一二维码可以为第1帧图像中的二维码。
S303、手机识别第一二维码,并基于第一图像计算第一目标放大系数。
示例性的,摄像头采集到的多帧图像可以组成预览流,该预览流中的图像包括第一二维码。例如,结合图3所示,一方面,摄像头驱动通过Camera HAL、Camera Service将预览流上报至应用,由/>应用在扫码界面显示该预览流,并识别该预览流中包括的第一二维码。另一方面,摄像头驱动将预览流上报至Camera HAL,Camera HAL对预览流进行处理,得到检测流,该检测流包括第一图像。而后,Camera HAL基于检测流中的第一图像计算第一目标放大系数。
例如,Camera HAL可以获取第一二维码的第一位置数据,以及第一图像的第二位置数据,并基于第一位置数据和第二位置数据计算第一目标放大系数。其中,该第一目标放大系数例如可以为上述实施例中的放大系数A。
需要说明的,对于计算第一目标放大系数的具体实现过程可以参考上述实施例,此处不再一一赘述。
S304、手机根据第一目标放大系数采集第二图像;第二图像包括第二二维码,第二二维码在第二图像中的比例大于第一二维码在第一图像中的比例。
示例性的,该第二图像可以为上述实施例中的第2帧图像,即摄像头按照一定帧率采集到的第2帧图像。其中,该第二二维码可以为第2帧图像中的二维码。
示例性的,结合图3所示,Camera HAL基于检测流中的第一图像计算出第一目标放大系数后,Camera HAL将第一目标放大系数下发至摄像头驱动,由摄像头驱动根据第一目标放大系数驱动摄像头采集第二图像。
例如,摄像头驱动根据第一目标放大系数调整摄像头中的镜头与二维码之间的距离(即焦距),即改变摄像头的焦距后,继续采集第二图像。或者,摄像头驱动根据第一目标放大系数增大摄像头采集到的第二图像中的每个像素面积,使得第二二维码的面积增大。在该两种方式中,都能够使得摄像头采集到的第二图像中的第二二维码变大,即放大第二二维码,从而使得第二二维码在第二图像中的比例大于第一二维码在第一图像中的比例。
S305、手机在第一时间段内未识别到第二二维码,手机获取采集的第二图像,并基于第二图像计算第二目标放大系数。
其中,第二目标放大系数可以为上述实施例中的放大系数A。需要说明的是,对于手机基于第二图像计算第二目标放大系数的具体实现方式可以参考上述实施例,此处不再一一赘述。
S306、手机根据第二目标放大系数和第一应用提供的第三目标放大系数,计算第四目标放大系数。
其中,第三目标放大系数可以为上述实施例中的放大系数B,该第四目标放大系数可以为上述实施例中的放大系数R。在S306中,手机可以采用融合策略计算第四目标放大系数,即手机将第二目标放大系数和第三目标放大系数的平均值,作为第四目标放大系数。
S307、手机根据第四目标放大系数采集第三图像;第三图像包括第三二维码,第三二维码在所述第三图像中的比例大于第二二维码在第二图像中的比例。
示例性的,对于S307的举例说明可以参考上述S304,此处不再一一赘述。
进一步的,手机在第二时间段内未识别到第三二维码,手机根据第三目标放大系数采集第四图像;其中,第四图像包括第四二维码,第四二维码在第四图像中的比例大于第三二维码在第三图像中的比例。
综上所述,在本申请实施例中,手机在第一时间段内基于摄像头采集到的图像计算第一目标放大系数(即上述放大系数A),并在后续采用第一目标放大系数采集图像。也就是说,在第一时间段内,手机采用上述优先策略,优先基于图像计算到的第一目标放大系数放大二维码,以提高扫码的快速性和准确性。
进而,若手机在第一时间段内未识别到二维码(即识别失败),手机在第二时间段内基于摄像头采集到的图像计算第二目标放大系数(即上述放大系数A),以及第一应用提供的第三目标放大系数(即上述放大系数B),计算第三目标放大系数(即上述放大系数R),并在后续采用放大系数B采集图像。也就是说,在第二时间段内,手机采用上述融合策略,将基于图像计算到的第二目标放大系数和第一应用提供的第三目标放大系数进行融合,采用融合后的放大系数放大二维码,进一步提高扫码的准确性。
进而,若手机在第二时间段未识别到二维码(即识别失败),手机根据第三目标放大系数采集图像。也就是说,若手机在第二时间段内仍未识别到二维码,手机不再基于采集到的图像计算放大系数A,而是采用第一应用提供的放大系数B采集图像,即使用放大系数B放大二维码,从而能够降低功耗。
需要说明的是,本申请的各个实施例所记载的内容可以解释、说明本申请的其他实施例中的技术方案,各个实施例中所记载的技术特征也可以在其他实施例中应用,与其他实施例中的技术特征进行结合形成新的方案,本申请只是示例性地列举几个实施例进行说明,并不代表本很强局限于此。
本申请实施例提供一种电子设备,该电子设备支持扫描二维码的功能;该电子设备包括:显示屏、存储器以及一个或多个处理器;显示屏用于显示摄像头采集到的图像或者处理器生成的图像;存储器中存储有计算机程序代码,计算机程序代码包括计算机指令,当计算机指令被处理器执行时,使得电子设备执行上述手机中执行的各个功能或者步骤。该电子设备的结构可以参考图2所示的手机100的结构。
本申请实施例还提供一种芯片系统,如图13所示,该芯片系统1100包括至少一个处理器1101和至少一个接口电路1102。其中,处理器1101可以是上述实施例中图2所示的处理器110。接口电路1102例如可以为处理器和外部存储器之间的接口电路;或者为处理器和内部存储器121之间的接口电路。
上述处理器1101和接口电路1102可通过线路互联。例如,接口电路1102可用于从其它装置(例如手机100的存储器)接收信号。又例如,接口电路1102可用于向其它装置(例如处理器1101)发送信号。示例性的,接口电路1102可读取存储器中存储的指令,并将该指令发送给处理器1101。当指令被处理器1101执行时,可使得电子设备执行上述实施例中手机执行的各个步骤。当然,该芯片系统还可以包含其他分立器件,本申请实施例对此不作具体限定。
本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质包括计算机指令,当所述计算机指令在电子设备上运行时,使得该电子设备执行上述方法实施例中手机执行的各个功能或者步骤。
本申请实施例还提供一种计算机程序产品,当所述计算机程序产品在计算机上运行时,使得所述计算机执行上述方法实施例中手机执行的各个功能或者步骤。
通过以上实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是一个物理单元或多个物理单元,即可以位于一个地方,或者也可以分布到多个不同地方。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上内容,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何在本申请揭露的技术范围内的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (10)
1.一种放大二维码的方法,其特征在于,应用于电子设备中,所述电子设备包括第一应用,所述第一应用提供扫描二维码的功能;所述方法包括:
响应于用户启动所述第一应用扫描二维码的功能,所述电子设备采集第一图像;所述第一图像包括第一二维码;
所述电子设备识别所述第一二维码,并基于所述第一图像计算第一目标放大系数;
所述电子设备根据所述第一目标放大系数采集第二图像;所述第二图像包括第二二维码,所述第二二维码在所述第二图像中的比例大于所述第一二维码在所述第一图像中的比例;
所述电子设备在第一时间段内未识别到所述第二二维码,所述电子设备基于所述第二图像计算第二目标放大系数;
所述电子设备根据所述第二目标放大系数和所述第一应用提供的第三目标放大系数,确定第四目标放大系数;
所述电子设备根据所述第四目标放大系数采集第三图像;所述第三图像包括第三二维码,所述第三二维码在所述第三图像中的比例大于所述第二二维码在所述第二图像中的比例。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述电子设备在第二时间段内未识别到所述第三二维码,所述电子设备根据所述第三目标放大系数采集第四图像;
其中,所述第四图像包括第四二维码,所述第四二维码在所述第四图像中的比例大于所述第三二维码在所述第三图像中的比例。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
响应于用户启动所述第一应用扫描二维码的功能,所述电子设备开始计时;
当计时时长超过第一阈值时,所述第一时间段结束,进入所述第二时间段;
当所述计时时长超过第二阈值时,所述第二时间段结束。
4.根据权利要求1-3中任一项所述的方法,其特征在于,所述基于所述第一图像计算第一目标放大系数,包括:
所述电子设备获取所述第一二维码的第一位置数据,和所述第一图像的第二位置数据;
所述电子设备根据所述第一位置数据和所述第二位置数据,确定所述第一二维码的外接矩形与所述第一图像边缘之间的目标距离;
所述电子设备根据所述第一位置数据和所述第二位置数据,确定所述第一二维码的外接矩形的第一面积和所述第一图像的第二面积;
所述电子设备基于所述目标距离、所述第二位置数据、所述第一面积以及所述第二面积计算所述第一目标放大系数。
5.根据权利要求4所述的方法,其特征在于,所述电子设备基于所述目标距离、所述第二位置数据、所述第一面积以及所述第二面积计算所述第一目标放大系数,包括:
所述电子设备根据所述目标距离和所述第二位置数据计算第一放大系数;
所述电子设备根据所述第一面积和所述第二面积计算第二放大系数;
所述电子设备将所述第一放大系数和所述第二放大系数中的最小系数,作为所述第一目标放大系数。
6.根据权利要求4所述的方法,其特征在于,所述电子设备基于所述目标距离、所述第二位置数据、所述第一面积以及所述第二面积计算所述第一目标放大系数,包括:
所述电子设备根据所述目标距离和所述第二位置数据计算第一放大系数;
所述电子设备根据所述第一面积和所述第二面积计算第二放大系数;
所述电子设备选取所述第一放大系数和所述第二放大系数中的最小系数,作为第三放大系数;
所述电子设备获取第四放大系数,并选取所述第三放大系数和所述第四放大系数中的最大系数,作为所述第一目标放大系数;
其中,所述第四放大系数为所述电子设备上一次采集图像时所使用的放大系数。
7.根据权利要求4所述的方法,其特征在于,所述目标距离包括第一目标距离和第二目标距离;所述电子设备根据所述第一位置数据和所述第二位置数据,确定所述第一二维码的外接矩形与所述第一图像边缘之间的目标距离,包括:
所述电子设备计算第一方向上所述第一二维码的外接矩形左边缘到所述第一图像左边缘的第一距离,以及所述第一二维码的外接矩形右边缘到所述第一图像右边缘的第二距离,并将所述第一距离与所述第二距离中的最大距离作为所述第一目标距离;
所述电子设备计算第二方向上所述第一二维码的外接矩形上边缘到所述第一图像上边缘的第三距离,以及所述第一二维码的外接矩形下边缘到所述第一图像下边缘的第四距离,并将所述第三距离与所述第四距离中的最大距离作为所述第二目标距离;
其中,所述第一方向和所述第二方向垂直。
8.根据权利要求5所述的方法,其特征在于,所述电子设备根据所述目标距离和所述第二位置数据计算第一放大系数,包括:
所述电子设备计算所述第一目标距离与所述第一图像在第一方向上的长度之间的第一比值,以及所述第二目标距离与所述第一图像在第二方向上的长度之间的第二比值;其中,所述第一方向和所述第二方向垂直;
所述电子设备将所述第一比值与所述第二比值之间的最小值作为所述第一放大系数。
9.一种电子设备,其特征在于,所述电子设备包括第一应用,所述第一应用提供扫描二维码的功能;所述电子设备包括:显示屏、存储器以及一个或多个处理器;
所述显示屏用于显示摄像头采集到的图像或者处理器生成的图像;所述存储器中存储有计算机程序代码,所述计算机程序代码包括计算机指令,当所述计算机指令被所述处理器执行时,使得所述电子设备执行如权利要求1-8中任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,包括计算机指令;当所述计算机指令在电子设备上运行时,使得所述电子设备执行如权利要求1-8中任一项所述的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310227006.1A CN116306733B (zh) | 2023-02-27 | 2023-02-27 | 一种放大二维码的方法及电子设备 |
PCT/CN2023/134074 WO2024179070A1 (zh) | 2023-02-27 | 2023-11-24 | 一种放大二维码的方法及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310227006.1A CN116306733B (zh) | 2023-02-27 | 2023-02-27 | 一种放大二维码的方法及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116306733A CN116306733A (zh) | 2023-06-23 |
CN116306733B true CN116306733B (zh) | 2024-03-19 |
Family
ID=86802570
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310227006.1A Active CN116306733B (zh) | 2023-02-27 | 2023-02-27 | 一种放大二维码的方法及电子设备 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN116306733B (zh) |
WO (1) | WO2024179070A1 (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116306733B (zh) * | 2023-02-27 | 2024-03-19 | 荣耀终端有限公司 | 一种放大二维码的方法及电子设备 |
CN116563048B (zh) * | 2023-07-05 | 2024-05-03 | 江西科技学院 | 一种财务报销方法、系统及计算机 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2012124123A1 (ja) * | 2011-03-17 | 2012-09-20 | 富士通株式会社 | 画像処理装置、画像処理方法及び画像処理プログラム |
CN106778440A (zh) * | 2016-12-21 | 2017-05-31 | 腾讯科技(深圳)有限公司 | 二维码识别方法及装置 |
CN109598162A (zh) * | 2018-08-20 | 2019-04-09 | 天津字节跳动科技有限公司 | 识别二维码的方法、装置、终端设备及存储介质 |
CN113408314A (zh) * | 2020-03-16 | 2021-09-17 | 华为技术有限公司 | 一种条码识别方法以及相关设备 |
CN113496133A (zh) * | 2020-04-07 | 2021-10-12 | 深圳爱根斯通科技有限公司 | 二维码识别方法、装置、电子设备及存储介质 |
WO2022121577A1 (zh) * | 2020-12-10 | 2022-06-16 | 北京达佳互联信息技术有限公司 | 图像处理方法及装置 |
CN115130489A (zh) * | 2021-03-26 | 2022-09-30 | 华为技术有限公司 | 一种扫描二维码的方法及装置 |
CN115130491A (zh) * | 2022-08-29 | 2022-09-30 | 荣耀终端有限公司 | 一种自动扫码方法和终端 |
CN115329795A (zh) * | 2022-10-17 | 2022-11-11 | 北京搜狐新动力信息技术有限公司 | 一种识别二维码的方法及装置 |
WO2022262260A1 (zh) * | 2021-06-15 | 2022-12-22 | 荣耀终端有限公司 | 一种拍摄方法及电子设备 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110443330B (zh) * | 2019-07-31 | 2023-09-22 | 维沃移动通信有限公司 | 一种扫码方法、装置、移动终端以及存储介质 |
JP7493927B2 (ja) * | 2019-11-07 | 2024-06-03 | キヤノン株式会社 | 画像処理装置、画像処理方法およびプログラム |
CN111767752B (zh) * | 2020-06-11 | 2022-09-23 | 网易宝有限公司 | 一种二维码识别方法及装置 |
CN116306733B (zh) * | 2023-02-27 | 2024-03-19 | 荣耀终端有限公司 | 一种放大二维码的方法及电子设备 |
-
2023
- 2023-02-27 CN CN202310227006.1A patent/CN116306733B/zh active Active
- 2023-11-24 WO PCT/CN2023/134074 patent/WO2024179070A1/zh unknown
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2012124123A1 (ja) * | 2011-03-17 | 2012-09-20 | 富士通株式会社 | 画像処理装置、画像処理方法及び画像処理プログラム |
CN106778440A (zh) * | 2016-12-21 | 2017-05-31 | 腾讯科技(深圳)有限公司 | 二维码识别方法及装置 |
CN109598162A (zh) * | 2018-08-20 | 2019-04-09 | 天津字节跳动科技有限公司 | 识别二维码的方法、装置、终端设备及存储介质 |
CN113408314A (zh) * | 2020-03-16 | 2021-09-17 | 华为技术有限公司 | 一种条码识别方法以及相关设备 |
CN113496133A (zh) * | 2020-04-07 | 2021-10-12 | 深圳爱根斯通科技有限公司 | 二维码识别方法、装置、电子设备及存储介质 |
WO2022121577A1 (zh) * | 2020-12-10 | 2022-06-16 | 北京达佳互联信息技术有限公司 | 图像处理方法及装置 |
CN115130489A (zh) * | 2021-03-26 | 2022-09-30 | 华为技术有限公司 | 一种扫描二维码的方法及装置 |
WO2022262260A1 (zh) * | 2021-06-15 | 2022-12-22 | 荣耀终端有限公司 | 一种拍摄方法及电子设备 |
CN115130491A (zh) * | 2022-08-29 | 2022-09-30 | 荣耀终端有限公司 | 一种自动扫码方法和终端 |
CN115329795A (zh) * | 2022-10-17 | 2022-11-11 | 北京搜狐新动力信息技术有限公司 | 一种识别二维码的方法及装置 |
Non-Patent Citations (3)
Title |
---|
Real Time Recognition of 2D Bar Codes in Complex Image Conditions;Ying-Hong Liang;《IEEE Xplore》;全文 * |
基于凸包及最小面积外接矩形的QR码定位;张勇;杨傲雷;;电子测量技术(第04期);全文 * |
手机扫描二维码编码解码技术设计与实现;焦红亮;《万方数据库》;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN116306733A (zh) | 2023-06-23 |
WO2024179070A1 (zh) | 2024-09-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11113523B2 (en) | Method for recognizing a specific object inside an image and electronic device thereof | |
CN116306733B (zh) | 一种放大二维码的方法及电子设备 | |
CN111553846B (zh) | 超分辨率处理方法及装置 | |
CN108513069B (zh) | 图像处理方法、装置、存储介质及电子设备 | |
CN111768416A (zh) | 照片裁剪方法及装置 | |
CN116341586B (zh) | 扫码方法、电子设备及存储介质 | |
CN111612723B (zh) | 图像修复方法及装置 | |
US20230224574A1 (en) | Photographing method and apparatus | |
CN111381996B (zh) | 内存异常处理方法及装置 | |
CN115633255B (zh) | 视频处理方法和电子设备 | |
WO2021185232A1 (zh) | 一种条码识别方法以及相关设备 | |
CN115460343B (zh) | 图像处理方法、设备及存储介质 | |
CN108495038B (zh) | 图像处理方法、装置、存储介质及电子设备 | |
CN115580690B (zh) | 图像处理的方法和电子设备 | |
CN114399622A (zh) | 图像处理方法和相关装置 | |
CN112712378A (zh) | 一种服务社区模式的售后服务管理系统 | |
CN112712377A (zh) | 一种产品缺陷整理汇总管理数据库平台系统 | |
CN117156293B (zh) | 拍照方法和相关装置 | |
CN117690177B (zh) | 人脸对焦方法、人脸对焦装置、电子设备及存储介质 | |
CN116074624B (zh) | 一种对焦方法和装置 | |
CN113297875B (zh) | 一种视频文字跟踪方法及电子设备 | |
CN117130680B (zh) | 一种芯片资源的调用方法及电子设备 | |
CN117156261B (zh) | 图像处理方法及相关设备 | |
CN116074628B (zh) | 一种数据处理方法及电子设备 | |
CN118247186B (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 |