CN115079886B - 二维码识别方法、电子设备以及存储介质 - Google Patents

二维码识别方法、电子设备以及存储介质 Download PDF

Info

Publication number
CN115079886B
CN115079886B CN202210855909.XA CN202210855909A CN115079886B CN 115079886 B CN115079886 B CN 115079886B CN 202210855909 A CN202210855909 A CN 202210855909A CN 115079886 B CN115079886 B CN 115079886B
Authority
CN
China
Prior art keywords
terminal device
terminal equipment
image
dimensional code
information
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
Application number
CN202210855909.XA
Other languages
English (en)
Other versions
CN115079886A (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.)
Honor Device Co Ltd
Original Assignee
Honor Device 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 Honor Device Co Ltd filed Critical Honor Device Co Ltd
Priority to CN202210855909.XA priority Critical patent/CN115079886B/zh
Priority to CN202211592097.0A priority patent/CN117435087A/zh
Publication of CN115079886A publication Critical patent/CN115079886A/zh
Priority to EP22899604.7A priority patent/EP4336330A1/en
Priority to PCT/CN2022/136697 priority patent/WO2024016564A1/zh
Application granted granted Critical
Publication of CN115079886B publication Critical patent/CN115079886B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/32Payment architectures, schemes or protocols characterised by the use of specific devices or networks using wireless devices
    • G06Q20/326Payment applications installed on the mobile devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/0346Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of the device orientation or free movement in a 3D space, e.g. 3D mice, 6-DOF [six degrees of freedom] pointers using gyroscopes, accelerometers or tilt-sensors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04847Interaction techniques to control parameter settings, e.g. interaction with sliders or dials
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/14Methods 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/1404Methods for optical code recognition
    • G06K7/1408Methods for optical code recognition the method being specifically adapted for the type of code
    • G06K7/14172D bar codes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/32Payment architectures, schemes or protocols characterised by the use of specific devices or networks using wireless devices
    • G06Q20/327Short range or proximity payments by means of M-devices
    • G06Q20/3276Short range or proximity payments by means of M-devices using a pictured code, e.g. barcode or QR-code, being read by the M-device
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72469User interfaces specially adapted for cordless or mobile telephones for operating the device by selecting functions from two or more displayed items, e.g. menus or icons

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Business, Economics & Management (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • General Business, Economics & Management (AREA)
  • Strategic Management (AREA)
  • Accounting & Taxation (AREA)
  • Health & Medical Sciences (AREA)
  • Electromagnetism (AREA)
  • General Health & Medical Sciences (AREA)
  • Toxicology (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Signal Processing (AREA)
  • User Interface Of Digital Computer (AREA)
  • Telephone Function (AREA)

Abstract

本申请实施例提供了一种二维码识别方法、电子设备以及存储介质,该方法应用于终端设备,该方法包括:确定终端设备的屏幕状态;若确定屏幕状态表征终端设备处于亮屏解锁状态,则确定终端设备的姿态变化信息和屏幕方向;若确定姿态变化信息表征的数值大于或等于第一预设阈值、且屏幕方向为除去第一方向以外的方向,则调用终端设备的前置摄像头获取图像,识别图像中的二维码信息,并显示与二维码信息对应的应用的界面;其中,第一方向为世界坐标系的z轴正方向。不再需要用户在终端设备上进行一系列触控操作,才可以触发终端设备去扫描二维码。节约了识别二维码的时间,提高了二维码识别效率。

Description

二维码识别方法、电子设备以及存储介质
技术领域
本申请涉及终端技术领域,尤其涉及一种二维码识别方法、电子设备以及存储介质。
背景技术
目前,随着终端技术的发展,终端设备已经成为人们生活中的重要工具。终端设备为用户提供了多种功能。
在现有技术中,终端设备响应于用户的一系列操作,进行二维码的扫描,进而完成生活和工作目的。
但是,在终端设备扫描二维码的过程中,需要用户在终端设备上进行一系列操作,才可以触发终端设备扫描二维码;触发过程需要耗费一定时间,导致二维码识别效率较低。
发明内容
本申请实施例提供一种二维码识别方法、电子设备以及存储介质,减少触发二维码识别的时间,提高二维码识别效率。
第一方面,本申请实施例提供一种二维码识别方法,所述方法包括:
确定终端设备的屏幕状态;若确定所述屏幕状态表征所述终端设备处于亮屏解锁状态,则确定所述终端设备的姿态变化信息和屏幕方向;若确定姿态变化信息表征的数值大于或等于第一预设阈值、且所述屏幕方向为除去第一方向以外的方向,则调用所述终端设备的前置摄像头获取图像,并识别所述图像中的二维码信息;其中,所述第一方向为世界坐标系的z轴正方向。
这样,直接根据终端设备的姿态变化信息和屏幕方向,确定调用前置摄像头去采集图像,并识别二维码信息。不在需要用户在终端设备上进行一系列触控操作,才可以触发终端设备去扫描二维码。节约了识别二维码的时间,提高了二维码识别效率。
在一种可能的实现方式中,确定所述终端设备的姿态变化信息,包括:获取所述终端设备中的加速度传感器在预设时段内采集的加速度变化数据,和/或,获取所述终端设备中的陀螺仪传感器在所述预设时段内采集的角度变化数据。根据所述加速度变化数据,和/或,角度变化数据,确定所述姿态变化信息。
这样,通过加速度传感器和陀螺仪传感器,准确的确定出终端设备在短时间内的姿态变化数据;基于姿态变化数据,得到终端设备的姿态变化信息。
在一种可能的实现方式中,确定所述终端设备的屏幕方向,包括:获取所述终端设备中的陀螺仪传感器在当前时刻所采集的角度数据;根据所述角度数据,确定所述终端设备的屏幕方向。
这样,通过陀螺仪传感器,准确的确定出终端设备在当前时刻的屏幕方向是否未超朝上。
在一种可能的实现方式中,在确定所述终端设备的姿态变化信息和屏幕方向之前,还包括:确定所述终端设备的接近光信息;若确定所述接近光信息表征的数值大于或等于第二预设阈值,则确定所述终端设备处于接近光未遮挡的状态。
这样,根据终端设备的接近光信息,确定是否处于接近光未遮挡状态;基于接近光未遮挡状态,使得终端设备距离二维码的距离适中,距离太近容易导致扫码失败,基于该条件,可以提高扫码的成功率。另外,可以避免用户将亮屏解锁的手机倒扣在桌面上时,启动扫描,从而可以进一步降低功耗。
在一种可能的实现方式中,在调用所述终端设备的前置摄像头获取图像之前,还包括:确定所述终端设备的环境光信息;若确定所述环境光信息表征的数值大于或等于第三预设阈值,则执行调用所述终端设备的前置摄像头获取图像的步骤。
这样,终端设备通过判断终端设备的环境光信息表征的数值,是否大于或等于第三预设阈值;进而,在确定环境光信息表征的数值大于或等于第三预设阈值的时候,执行后续过程,去调取前置摄像头采集图像,并识别图像中的二维码。在环境光信息表征的数值大于或等于第三预设阈值的时候,才可以会保证终端设备所出的环境不是较为幽暗环境,保证终端设备的前置摄像头可以采集到清晰的图像。
在一种可能的实现方式中,在确定所述终端设备的姿态变化信息和屏幕方向之前,还包括:确定所述终端设备的运行状态;若确定所述运行状态表征所述终端设备处于桌面状态,则执行确定所述终端设备的姿态变化信息和屏幕方向的步骤。
这样,在终端设备在前台运行其他应用的时候,若打断其他应用去调取前置摄像头,则有可能会导致其他应用的运行出现异常。终端设备在确定终端设备处于桌面状态的时候,才会执行后续动作,基于后续的判断过程去调取前置摄像头采集图像;从而,避免在终端设备基于前台运行其他应用的时候,若直接打断其他应用的运行,会导致其他应用或终端设备出现异常的问题。
在一种可能的实现方式中,在调用所述终端设备的前置摄像头获取图像之前,还包括:确定所述终端设备的当前位置信息;若确定所述当前位置信息表征所述终端设备处于预设地理围栏范围之内,则确定所述终端设备进入预设位置。
这样,在终端设备处于预设位置时,确定终端设备进入了需要扫描的地点,便于准确的触发终端设备进行二维码识别。
在一种可能的实现方式中,调用所述终端设备的前置摄像头获取图像,包括:调取所述终端设备的前置摄像头,以第一帧率采集第一图像;若确定所述第一图像中存在疑似二维码图像,则调取所述终端设备的前置摄像头,以第二帧率采集第二图像;其中,所述第一帧率小于所述第二帧率。
这样,先采集低帧率图像,若低帧率图像中不具有疑似二维码图像,就无需进行二维码识别了,进而减少资源的消耗;降低了终端设备的功耗。
在一种可能的实现方式中,在调取所述终端设备的前置摄像头,以第二帧率采集第二图像之前,还包括:确定所述终端设备与所述疑似二维码图像之间的距离信息;若确定所述距离信息所表征的数值小于或等于预设距离,则执行调取所述终端设备的前置摄像头,以第二帧率采集第二图像的步骤。
这样,避免终端设备距离二维码太远,而无法准确的识别二维码。
在一种可能的实现方式中,所述方法,还包括:若确定所述距离信息所表征的数值大于所述预设距离,则生成并发出第一提示信息;其中,所述第一提示信息用于提示所述终端设备的前置摄像头需靠近所述疑似二维码图像。
这样,在终端设备距离二维码较远时,提示用户将终端设备的前置摄像头靠近二维码。
在一种可能的实现方式中,识别所述图像中的二维码信息,包括:识别所述第二图像中的二维码信息,并显示与所述二维码信息对应的应用的界面。其中,与所述二维码信息对应的应用的界面,可以包括:微信应用的界面,比如,微信付款界面、微信小程序的界面(比如健康码界面、点餐界面等),支付宝应用的界面,比如,支付宝的付款界面、支付宝小程序的界面(比如健康码界面、点餐界面等),会议应用的界面,连接wifi的界面,快递的取件界面,等等。
这样,识别终端设备所采集的较高帧率的图像中的二维码,可以准确的识别到二维码。
在一种可能的实现方式中,识别所述图像中的二维码信息,包括:识别所述二维码信息,得到并显示多个二维码图像;响应于确认指令,调用与所述确认指令所指示的二维码图像对应的应用的界面;其中,所述确认指令用于指示用户所选择的二维码图像。
这样,在得到多个二维码的时候,进行人机交互,由用户确定需要出发的二维码,进而调用用户所指示的二维码的应用。
第二方面,本申请实施例提供一种二维码识别装置,该二维码识别装置可以是电子设备,也可以是终端设备,也可以是终端设备内的芯片或者芯片系统。该二维码识别装置可以包括显示单元和处理单元。当该二维码识别装置是终端设备时,该显示单元可以是显示屏。该显示单元用于执行显示的步骤,以使该终端设备实现第一方面或第一方面的任意一种可能的实现方式中描述的一种二维码识别方法。当该二维码识别装置是终端设备时,该处理单元可以是处理器。该二维码识别装置还可以包括存储单元,该存储单元可以是存储器。该存储单元用于存储指令,该处理单元执行该存储单元所存储的指令,以使该终端设备实现第一方面或第一方面的任意一种可能的实现方式中描述的一种二维码识别方法。当该二维码识别装置是终端设备内的芯片或者芯片系统时,该处理单元可以是处理器。该处理单元执行存储单元所存储的指令,以使该终端设备实现第一方面或第一方面的任意一种可能的实现方式中描述的一种二维码识别方法。该存储单元可以是该芯片内的存储单元(例如,寄存器、缓存等),也可以是该终端设备内的位于该芯片外部的存储单元(例如,只读存储器、随机存取存储器等)。
第三方面,本申请实施例提供一种电子设备,包括:用于执行第一方面或第一方面任意可能的实现方式中的任一方法的单元。
第四方面,本申请实施例提供一种电子设备,包括:显示单元、处理器和接口电路;其中,接口电路用于与其它装置通信;显示单元用于执行显示的步骤;处理器用于运行代码指令或计算机程序,以执行第一方面的任意一种可能的实现方式中的方法。
在一种可能的实现方式中,电子设备,还包括:存储器;存储器用于存储代码指令或计算机程序。
第五方面,本申请实施例提供算机可读存储介质,计算机可读存储介质中存储有计算机程序或指令,当计算机程序或指令在计算机上运行时,使得计算机执行第一方面的任意一种可能的实现方式中描述的终端设备执行的方法。
第六方面,本申请实施例提供一种包括计算机程序的计算机程序产品,当计算机程序在计算机上运行时,使得计算机执行第一方面的任意一种可能的实现方式中描述的终端设备执行的方法。
应当理解的是,本申请的第二方面至第六方面与本申请的第一方面的技术方案相对应,各方面及对应的可行实施方式所取得的有益效果相似,不再赘述。
附图说明
图1示出了本申请实施例的二维码识别方法所适用的场景示意图一;
图2示出了本申请实施例的二维码识别方法所适用的场景示意图二;
图3示出了终端设备100的结构示意图;
图4为本申请实施例的终端设备100的软件结构框图;
图5为本申请实施例提供的一种二维码识别方法的流程示意图;
图6为本申请实施例提供的一种二维码识别方法的界面示意图一;
图7为本申请实施例提供的一种二维码识别方法的界面示意图二;
图8为本申请实施例提供的一种二维码识别方法的界面示意图三;
图9为本申请实施例提供的一种二维码识别方法的界面示意图四;
图10为本申请实施例提供的又一种二维码识别方法的流程示意图;
图11为本申请实施例提供的又一种二维码识别方法的界面示意图一;
图12为本申请实施例提供的一种二维码识别方法的界面示意图二;
图13为本申请实施例提供的又一种二维码识别方法的界面示意图三;
图14为本申请实施例提供的又一种二维码识别方法的界面示意图四;
图15为本申请实施例提供的另一种二维码识别方法的流程示意图;
图16为本申请实施例提供的另一种二维码识别方法的界面示意图一;
图17为本申请实施例提供的另一种二维码识别方法的界面示意图二;
图18为本申请实施例提供的另一种二维码识别方法的界面示意图三;
图19为本申请实施例提供的另一种二维码识别方法的界面示意图四;
图20为本申请实施例提供的再一种二维码识别方法的流程示意图;
图21为本申请实施例提供的再一种二维码识别方法的界面示意图一;
图22为本申请实施例提供的再一种二维码识别方法的界面示意图二;
图23为本申请实施例提供的再一种二维码识别方法的界面示意图三;
图24为本申请实施例提供的再一种二维码识别方法的界面示意图四;
图25为本申请实施例提供的二维码界面示意图;
图26为本申请实施例提供的二维码识别方法的软件架构示意图;
图27为本申请实施例提供的一种芯片的结构示意图;
图28为本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
在本申请的实施例中,采用了“第一”、“第二”等字样对功能和作用基本相同的相同项或相似项进行区分。例如,第一芯片和第二芯片仅仅是为了区分不同的芯片,并不对其先后顺序进行限定。本领域技术人员可以理解“第一”、“第二”等字样并不对数量和执行次序进行限定,并且“第一”、“第二”等字样也并不限定一定不同。
需要说明的是,本申请实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本申请中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其他实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
本申请实施例中,“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B的情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b,或c中的至少一项(个),可以表示:a,b,c,a-b,a--c,b-c,或a-b-c,其中a,b,c可以是单个,也可以是多个。
随着终端技术的发展,终端设备已经成为人们生活中的重要工具。终端设备为用户提供了多种功能。终端设备响应于用户的一系列操作,进行二维码的扫描,进而完成生活和工作目的。
举例来说,用户在需要采用终端设备扫描一个二维码的时候,用户触发终端设备的应用或者小程序,进而终端设备基于用户所触发的应用或者小程序的入口,去触发二维码识别功能。然后,终端设备才可以去调取摄像头去获取图像,进而终端设备识别所获取的图像。
可知,在终端设备扫描二维码的过程中,需要用户在终端设备上进行一系列操作,才可以触发终端设备扫描二维码;触发过程需要耗费一定时间,导致二维码识别效率较低。
有鉴于此,本申请实施例提供的二维码识别方法、电子设备以及存储介质,其中,该方法可以检测终端设备的姿态变化信息和屏幕方向,去直接调用终端设备的前置摄像头采集图像并识别二维码;节约了识别二维码的时间,提高了二维码识别效率;提高了用户体验。
图1示出了本申请实施例的二维码识别方法所适用的场景示意图一。如图1中的(a)所示,用户持有终端设备100,终端设备100处于亮屏解锁状态。如图1中的(b)所示,用户将终端设备100进行翻转,即,用户具有翻腕动作;进而基于本申请实施例的二维码识别方法,终端设备100调用终端设备的前置摄像头获取桌面上的图像,并识别图像中的二维码信息。终端设备100基于所识别到的二维码信息,调用与二维码信息对应的应用的界面。
图2示出了本申请实施例的二维码识别方法所适用的场景示意图二。如图2所示,用户持有终端设备100;终端设备100基于本申请实施例的二维码识别方法,调用终端设备的后置摄像头获取墙面上的图像,并识别图像中的二维码信息。终端设备100基于所识别到的二维码信息,调用与二维码信息对应的应用的界面。
上述终端设备100也可以称为终端(terminal)、用户设备(user equipment,UE)、移动台(mobile station,MS)、移动终端(mobile terminal,MT)等。终端设备可以是手机(mobile phone)、智能电视、穿戴式设备、平板电脑(Pad)、带无线收发功能的电脑、虚拟现实(virtual reality,VR)终端设备、增强现实(augmented reality,AR)终端设备、工业控制(industrial control)中的无线终端、无人驾驶(self-driving)中的无线终端、远程手术(remote medical surgery)中的无线终端、智能电网(smart grid)中的无线终端、运输安全(transportation safety)中的无线终端、智慧城市(smart city)中的无线终端、智慧家庭(smart home)中的无线终端等等。本申请的实施例对终端设备所采用的具体技术和具体设备形态不做限定。
终端设备100具有显示界面的功能、具有获取图像的功能。
为了能够更好地理解本申请实施例,下面对本申请实施例的终端设备的结构进行介绍:
图3示出了终端设备100的结构示意图。终端设备100可以包括处理器110,外部存储器接口120,内部存储器121,通用串行总线(universal serial bus,USB)接口130,充电管理模块140,电源管理模块141,电池142,天线1,天线2,移动通信模块150,无线通信模块160,音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,传感器模块180,按键190,马达191,指示器192,摄像头193,显示屏194,以及用户标识模块(subscriberidentification module,SIM)卡接口195等。其中传感器模块180可以包括压力传感器180A,陀螺仪传感器180B,气压传感器180C,磁传感器180D,加速度传感器180E,距离传感器180F,接近光传感器180G,指纹传感器180H,温度传感器180J,触摸传感器180K,环境光传感器180L,骨传导传感器180M等。
可以理解的是,本申请实施例示意的结构并不构成对终端设备100的具体限定。在本申请另一些实施例中,终端设备100可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processingunit,GPU),图像信号处理器(image signal processor,ISP),控制器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从存储器中调用。避免了重复存取,减少了处理器110的等待时间,因而提高了系统的效率。
在一些实施例中,处理器110可以包括一个或多个接口。接口可以包括集成电路(inter-integrated circuit,I2C)接口,集成电路内置音频(inter-integratedcircuitsound,I2S)接口,脉冲编码调制(pulse code modulation,PCM)接口,通用异步收发传输器(universal asynchronous receiver/transmitter,UART)接口,移动产业处理器接口(mobile industry processor interface,MIPI),通用输入输出(general-purposeinput/output,GPIO)接口,用户标识模块(subscriber identity module,SIM)接口,和/或通用串行总线(universal serial bus,USB)接口等。
可以理解的是,本申请实施例示意的各模块间的接口连接关系,是示意性说明,并不构成对终端设备100的结构限定。在本申请另一些实施例中,终端设备100也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。
终端设备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),Miniled,MicroLed,Micro-oLed,量子点发光二极管(quantum dotlightemitting diodes,QLED)等。在一些实施例中,终端设备100可以包括1个或N个显示屏194,N为大于1的正整数。
终端设备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可以包括1个或N个摄像头193,N为大于1的正整数。
数字信号处理器用于处理数字信号,除了可以处理数字图像信号,还可以处理其他数字信号。例如,当终端设备100在频点选择时,数字信号处理器用于对频点能量进行傅里叶变换等。
视频编解码器用于对数字视频压缩或解压缩。终端设备100可以支持一种或多种视频编解码器。这样,终端设备100可以播放或录制多种编码格式的视频,例如:动态图像专家组(moving picture experts group,MPEG)1,MPEG2,MPEG3,MPEG4等。
NPU为神经网络(neural-network,NN)计算处理器,通过借鉴生物神经网络结构,例如借鉴人脑神经元之间传递模式,对输入信息快速处理,还可以不断的自学习。通过NPU可以实现终端设备100的智能认知等应用,例如:图像识别,人脸识别,语音识别,文本理解等。
陀螺仪传感器180B可以用于确定终端设备100的运动姿态。在一些实施例中,可以通过陀螺仪传感器180B确定终端设备100围绕三个轴(即,x,y和z轴)的角速度。陀螺仪传感器180B可以用于拍摄防抖。示例性的,当按下快门,陀螺仪传感器180B检测终端设备100抖动的角度,根据角度计算出镜头模组需要补偿的距离,让镜头通过反向运动抵消终端设备100的抖动,实现防抖。陀螺仪传感器180B还可以用于导航,体感游戏场景。
基于陀螺仪传感器180B采集角度变化数据。基于陀螺仪传感器180B采集角度数据。
加速度传感器180E可检测终端设备100在各个方向上(一般为三轴)加速度的大小。当终端设备100静止时可检测出重力的大小及方向。还可以用于识别终端设备姿态,应用于横竖屏切换,计步器等应用程序。
基于加速度传感器180E采集加速度变化数据。终端设备基于加速度传感器180E采集的加速度变化数据,确定出终端设备的姿态变化信息。
终端设备基于陀螺仪传感器180B采集的角度数据,确定屏幕方向。
终端设备基于陀螺仪传感器180B采集的角度变化数据,确定出终端设备的姿态变化信息。或者,终端设备基于加速度传感器180E采集的加速度变化数据,确定出终端设备的姿态变化信息。或者,终端设备基于陀螺仪传感器180B采集的角度变化数据、以及加速度传感器180E采集的加速度变化数据,确定出终端设备的姿态变化信息。
接近光传感器180G可以包括例如发光二极管(LED)和光检测器,例如光电二极管。发光二极管可以是红外发光二极管。终端设备100通过发光二极管向外发射红外光。终端设备100使用光电二极管检测来自附近物体的红外反射光。当检测到充分的反射光时,可以确定终端设备100附近有物体。当检测到不充分的反射光时,终端设备100可以确定终端设备100附近没有物体。终端设备100可以利用接近光传感器180G检测用户手持终端设备100贴近耳朵通话,以便自动熄灭屏幕达到省电的目的。接近光传感器180G也可用于皮套模式,口袋模式自动解锁与锁屏。
接近光传感器180G采集接近光数据。终端设备基于光传感器180G采集的接近光数据,确定接近光信息。
环境光传感器180L用于感知环境光亮度。终端设备100可以根据感知的环境光亮度自适应调节显示屏194亮度。环境光传感器180L也可用于拍照时自动调节白平衡。环境光传感器180L还可以与接近光传感器180G配合,检测终端设备100是否在口袋里,以防误触。
环境光传感器180L采集环境光数据。终端设备基于环境光传感器180L采集的环境光数据,确定环境光信息。
终端设备100的软件系统可以采用分层架构,事件驱动架构,微核架构,微服务架构,或云架构,等。本申请实施例以分层架构的Android系统为例,示例性说明终端设备100的软件结构。
图4为本申请实施例的终端设备100的软件结构框图。
分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,将Android系统分为四层,从上至下分别为应用程序层,应用程序框架层,安卓运行时(Android runtime)和系统库,以及内核层。
应用程序层可以包括一系列应用程序包。
如图4所示,应用程序包可以包括相机,日历,电话,地图,电话,音乐,设置,邮箱,视频,社交等应用程序。
应用程序框架层为应用程序层的应用程序提供应用编程接口(applicationprogramming interface,API)和编程框架。应用程序框架层包括一些预先定义的函数。
如图4所示,应用程序框架层可以包括窗口管理器,内容提供器,资源管理器,视图系统,通知管理器等。
窗口管理器用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状态栏,锁定屏幕,触摸屏幕,拖拽屏幕,截取屏幕等。
内容提供器用来存放和获取数据,并使这些数据可以被应用程序访问。数据可以包括视频,图像,音频,拨打和接听的电话,浏览历史和书签,电话簿等。
视图系统包括可视控件,例如显示文字的控件,显示图片的控件等。视图系统可用于构建应用程序。显示界面可以由一个或多个视图组成的。例如,包括短信通知图标的显示界面,可以包括显示文字的视图以及显示图片的视图。
资源管理器为应用程序提供各种资源,比如本地化字符串,图标,图片,布局文件,视频文件等等。
通知管理器使应用程序可以在状态栏中显示通知信息,可以用于传达告知类型的消息,可以短暂停留后自动消失,无需用户交互。比如通知管理器被用于告知下载完成,消息提醒等。通知管理器还可以是以图表或者滚动条文本形式出现在系统顶部状态栏的通知,例如后台运行的应用程序的通知,还可以是以对话窗口形式出现在屏幕上的通知。例如在状态栏提示文本信息,发出提示音,终端设备振动,指示灯闪烁等。
Android runtime包括核心库和虚拟机。Android runtime负责安卓系统的调度和管理。
核心库包含两部分:一部分是java语言需要调用的功能函数,另一部分是安卓的核心库。
应用程序层和应用程序框架层运行在虚拟机中。虚拟机将应用程序层和应用程序框架层的java文件执行为二进制文件。虚拟机用于执行对象生命周期的管理,堆栈管理,线程管理,安全和异常的管理,以及垃圾回收等功能。
内核层是硬件和软件之间的层。内核层至少包含显示驱动,摄像头驱动,音频驱动,传感器驱动。
下面结合应用程序启动或应用程序中发生界面切换的场景,示例性说明终端设备100软件以及硬件的工作流程。
下面结合附图对本申请实施例提供的二维码识别的操作过程及二维码识别过程中的界面的显示过程进行详细地介绍。需要说明的是,本申请实施例中的“在……时”,可以为在某种情况发生的瞬时,也可以为在某种情况发生后的一段时间内,本申请实施例对此不作具体限定。
图5为本申请实施例提供的一种二维码识别方法的流程示意图。如图5所示,该方法可以包括:
S501、确定终端设备的屏幕状态,若确定屏幕状态表征终端设备处于亮屏解锁状态,则执行后续步骤。
示例性地,本实施例的执行主体为终端设备、或者终端设备中的处理器、或者设置于终端设备的装置,或者电子设备,对此不做限制。本实施例以执行主体为终端设备进行介绍。
在一种可能的实现方式中,终端设备可以在运行第一应用的过程中确定屏幕状态,第一应用可以是任何应用,包括桌面应用,比如说,第一应用可以是视频类应用,也就是第一终端设备在播放视频,或者还可以是阅读类应用等。
终端设备基于应用(Application,简称app)层面,间隔性的获取终端设备的屏幕状态;终端设备根据屏幕状态判断终端设备是否处于亮屏解锁状态。一个示例中,终端设备可以通过软件接口获取屏幕参数;由于屏幕参数指示出了终端设备处于黑屏状态、或者亮屏未解锁状态、或者亮屏解锁状态,进而终端设备可以根据所获取的屏幕参数,得到屏幕状态。
终端设备若确定屏幕状态表征终端设备处于亮屏解锁状态,则执行后续步骤;否则,间隔预设时间,再次执行步骤S501。从而终端设备在确定终端设备处于黑屏状态、或者亮屏未解锁状态的时候,终端设备不会触发前置摄像头去采集图像,避免了无意义的触发动作;终端设备在确定终端设备处于亮屏解锁状态下的时候,才会执行后续动作,基于后续的判断过程去调取前置摄像头采集图像。
S502、确定终端设备的运行状态;若确定运行状态表征终端设备处于桌面状态,则执行步骤S503。
示例性地,终端设备若确定屏幕状态表征终端设备处于亮屏解锁状态,终端设备需要获取终端设备当前的运行状态。终端设备需要判断终端设备的运行状态,是否处于桌面状态。其中,处于桌面状态,指的是,终端设备当前运行桌面应用,没有处于前台的其他应用。
一个示例中,终端设备可以通过软件接口获取运行参数;由于运行参数指示出了终端设备处于桌面状态、或者应用运行状态,进而终端设备可以根据运行参数,确定出终端设备是否处于桌面状态。
终端设备若确定终端设备的运行状态表征终端设备处于桌面状态,则执行后续步骤;否则,间隔预设时间,再次执行步骤S501。在终端设备在前台运行其他应用的时候,若打断其他应用去调取前置摄像头,则有可能会导致其他应用的运行出现异常。终端设备在确定终端设备处于桌面状态的时候,才会执行后续动作,基于后续的判断过程去调取前置摄像头采集图像;从而,避免在终端设备基于前台运行其他应用的时候,若直接打断其他应用的运行,会导致其他应用或终端设备出现异常的问题。
其中,步骤S502为可选步骤。可以在步骤S501之后,若确定屏幕状态表征终端设备处于亮屏解锁状态,则执行步骤S503。或者,可以在步骤S502之后,若确定运行状态表征终端设备处于桌面状态,则执行步骤S503。
S503、确定终端设备的接近光信息;若确定接近光信息表征的数值大于或等于第二预设阈值,则确定终端设备处于接近光未遮挡的状态。
示例性地,在步骤S503中,终端设备获取接近光信息,进而根据接近光信息判断终端设备是否处于接近光未遮挡的状态。终端设备若确定终端设备处于接近光未遮挡的状态,则执行后续步骤;否则,再次执行步骤S501。
一个示例中,终端设备中设置有接近光传感器,接近光传感器可以获取终端设备的接近光数据。终端设备在服务执行环境(Service Execution Environment,简称SEE)环境的sensorhub层面上,获取接近光传感器所采集的接近光数据;然后,终端设备基于当前时刻下的接近光数据,得到接近光信息,接近光信息表征终端设备在当前时刻下的接近光数值;终端设备若确定接近光信息所表征的数值大于等于第二预设阈值,则确定终端设备处于接近光未遮挡的状态;终端设备若确定接近光信息所表征的数值小于第二预设阈值,则确定终端设备处于接近光遮挡的状态。
基于“接近光未遮挡”,使得终端设备距离二维码的距离适中,距离太近容易导致扫码失败,基于该条件,可以提高扫码的成功率。
步骤S503为可选步骤。可以在步骤S501之后,若确定屏幕状态表征终端设备处于亮屏解锁状态,则执行步骤S504。或者,可以在步骤S502之后,若确定运行状态表征终端设备处于桌面状态,则执行步骤S504。或者,可以在步骤S503之后,若确定终端设备处于接近光未遮挡的状态,则执行步骤S504。
S504、确定终端设备的姿态变化信息和屏幕方向;若确定姿态变化信息表征的数值大于或等于第一预设阈值、且屏幕方向为除去第一方向以外的方向,则执行后续步骤。
其中,第一方向为世界坐标系的z轴正方向。
一个示例中,步骤S504中的“确定终端设备的姿态变化信息”,包括:获取终端设备中的加速度传感器在预设时段内采集的加速度变化数据,和/或,获取终端设备中的陀螺仪传感器在预设时段内采集的角度变化数据;根据加速度变化数据,和/或,角度变化数据,确定姿态变化信息。
一个示例中,步骤S504中的“确定终端设备的屏幕方向”,包括:获取终端设备中的陀螺仪传感器在当前时刻所采集的角度数据;根据角度数据,确定终端设备的屏幕方向。
示例性地,在步骤S501之后,或者在步骤S502之后,或者在步骤S503之后,终端设备获取终端设备的姿态变化信息和屏幕方向。其中,姿态变化信息,包括:加速度变化数据,和/或,角度变化数据。
终端设备中设置有加速度传感器和陀螺仪传感器。终端设备中的加速度传感器在预设时段内采集的加速度变化数据,终端设备中的陀螺仪传感器在预设时段内采集的角度变化数据;其中,预设时段为位于当前时刻之前的一个时段。终端设备根据加速度变化数据,和/或,角度变化数据,确定终端设备的姿态变化信息。一个示例中,终端设备根据加速度变化数据,和/或,角度变化数据,进行姿态计算,得到终端设备的姿态变化信息,其中,姿态变化信息表征的终端设备的姿态变化角度,或者,姿态变化信息表征的终端设备的旋转变化角度。
并且,终端设备中的陀螺仪传感器在当前时刻采集的角度数据;终端设备可以直接根据该角度数据所指示的角度,确定出终端设备的屏幕方向。一个示例中,陀螺仪传感器采集到在当前时刻的xyz轴数据;终端设备获取陀螺仪传感器所采集的xyz轴数据,然后,终端设备根据xyz轴数据判断终端设备的屏幕方向,是否未朝向世界坐标系的z轴正方向,即,判断终端设备的屏幕方向是否未朝上。
其中,本实施例中,终端设备的屏幕方向的“朝上”,指的是,终端设备的屏幕朝向“世界坐标系的z轴正方向”;第一方向,指的是,世界坐标系的z轴正方向。
终端设备的屏幕方向的“朝下”,指的是,终端设备的屏幕朝向“世界坐标系的z轴负方向”;第二方向,指的是,世界坐标系的z轴负方向。
基于上述原理,终端设备根据所得到确定姿态变化信息表征的数值,大于或等于第一预设阈值,进而确定终端设备发生翻转;可知,持有终端设备的用户发生翻腕动作,以将终端设备的屏幕进行翻转。并且,终端设备确定屏幕方向为除去第一方向以外的方向,则确定终端设备的屏幕方向未朝上。然后,终端设备确定执行后续步骤。
从而,在本实施例中,终端设备在确定终端设备被翻转、并且终端设备的屏幕方向未朝上,进而去调去终端设备的前置摄像头采集图像,并识别图像中的二维码。进而不需要用户与终端设备之间进行多次人机交互,才可以去触发终端设备识别二维码;减少了用户的操作次数,加快了识别二维码的效率,提高了用户体验。
一个示例中,终端设备获取的姿态变化信息包括:加速度变化数据、角度变化数据。并且中设备获取到当前时刻的角度数据。
此时,终端设备若确定屏幕方向为除去第一方向的其他方向,第一方向为世界坐标系的z轴正方向,可知,此时屏幕方向未朝上,则执行后续步骤;否则,再次执行步骤S501。
然后,终端设备若确定加速度变化数据表征的数值,大于等于与加速度变化数据对应的第一预设阈值,并且,终端设备若确定角度变化数据表征的数值,大于等于与角度变化数据对应的第一预设阈值;从而,终端设备确定持有终端设备的用户有翻腕动作,则执行后续步骤;否则,再次执行步骤S501。
终端设备若确定屏幕方向未朝上、并且持有终端设备的用户有翻腕动作,则终端设备确定需要调用终端设备的前置摄像头。
或者,一个示例中,终端设备获取的姿态变化信息包括:加速度变化数据和角度数据。
此时,终端设备若确定屏幕方向为除去第一方向的其他方向,第一方向为世界坐标系的z轴正方向,可知,此时屏幕方向未朝上,则执行后续步骤;否则,再次执行步骤S501。
然后,终端设备若确定加速度变化数据表征的数值,大于等于与加速度变化数据对应的第一预设阈值,从而,终端设备确定持有终端设备的用户有翻腕动作,则执行后续步骤;否则,再次执行步骤S501。
终端设备若确定屏幕方向未朝上、并且持有终端设备的用户有翻腕动作,则终端设备确定需要调用终端设备的前置摄像头。
或者,一个示例中,终端设备获取的姿态变化信息包括:角度变化数据和角度数据。
此时,终端设备若确定屏幕方向为除去第一方向的其他方向,第一方向为世界坐标系的z轴正方向,可知,此时屏幕方向未朝上,则执行后续步骤;否则,间隔预设时间,再次执行步骤S501。
然后,终端设备若确定角度变化数据表征的数值,大于等于与角度变化数据对应的第一预设阈值;从而,终端设备确定持有终端设备的用户有翻腕动作,则执行后续步骤;否则,间隔预设时间,再次执行步骤S501。
终端设备若确定屏幕方向未朝上、并且持有终端设备的用户有翻腕动作,则终端设备确定需要调用终端设备的前置摄像头。
其中,终端设备在SEE环境的sensorhub层面上基于陀螺仪传感器,获取当前时刻的角度数据。终端设备在SEE环境的sensorhub层面上基于加速度传感器,获取预设时段内的加速度变化数据。终端设备在SEE环境的sensorhub层面上基于陀螺仪传感器,获取预设时段内的角度变化数据。
S505、确定终端设备的当前位置信息;若确定当前位置信息表征终端设备处于预设地理围栏范围之内,则确定终端设备进入预设位置。
示例性地,终端设备还可以获取终端设备的当前位置信息。终端设备根据当前位置信息,检测终端设备是否在预设地理围栏范围之内。若确定终端设备在预设地理围栏范围内,则确定终端设备进入预设位置,并且执行后续步骤;若确定终端设备不在预设地理围栏范围内,则再次执行步骤S501。
步骤S505为可选步骤。可以在步骤S505之后,若确定终端设备进入预设位置,则执行步骤S506。或者,不需要执行步骤S505,在步骤S504之后,若确定姿态变化信息表征的数值大于或等于第一预设阈值、且屏幕方向为除去第一方向以外的方向,则执行步骤S506。
S506、确定终端设备的环境光信息;若确定环境光信息表征的数值大于或等于第三预设阈值,则执行后续步骤。
示例性地,终端设备还可以确定出终端设备的环境光信息。
一个示例中,终端设备中设置有环境光传感器,环境光传感器可以获取终端设备的环境光数据。终端设备在服务执行环境(Service Execution Environment,简称SEE)环境的sensorhub层面上,获取环境光传感器所采集的环境光数据;然后,终端设备基于当前时刻下的环境光数据,得到环境光信息,环境光信息表征终端设备在当前时刻下的环境光数值。
然后,终端设备判断环境光信息表征的数值是否大于等于第三预设阈值。终端设备若确定环境光信息表征的数值大于等于第三预设阈值,则确定终端设备所出的环境不是较为幽暗环境,是可以保证终端设备的前置摄像头可以采集到清晰的图像的,并执行后续步骤;终端设备若确定环境光信息表征的数值小于第三预设阈值,则再次执行步骤S501。
例如,第三预设阈值为10勒克斯(lux)。
终端设备通过判断终端设备的环境光信息表征的数值,是否大于或等于第三预设阈值;进而,在确定环境光信息表征的数值大于或等于第三预设阈值的时候,执行后续过程,去调取前置摄像头采集图像,并识别图像中的二维码。在环境光信息表征的数值大于或等于第三预设阈值的时候,才可以会保证终端设备所出的环境不是较为幽暗环境,保证终端设备的前置摄像头可以采集到清晰的图像。
步骤S506为可选步骤。可以在步骤S506之后,若确定环境光信息表征的数值大于或等于第三预设阈值,则执行步骤S508。或者,不需要执行步骤S506,在步骤S505之后,若确定终端设备进入预设位置,则执行步骤S508。或者,不需要执行步骤S505和S506,在步骤S504之后,若确定姿态变化信息表征的数值大于或等于第一预设阈值、且屏幕方向为除去第一方向以外的方向,则执行步骤S508。
S507、确定终端设备的环境光信息;若确定环境光信息表征的数值小于第三预设阈值,则自动调整终端设备的屏幕亮度大于或等于第三预设阈值,执行后续步骤。
一个示例中,终端设备若确定环境光信息表征的数值小于第三预设阈值,则确定终端设备可以自动提高终端设备的屏幕亮度,进而为终端设备提高环境光;此时,终端设备可以将终端设备的屏幕亮度,提高至大于等于第三预设阈值的亮度。然后,执行后续步骤。
从而,在确定环境光信息表征的数值小于第三预设阈值的时候,终端设备自动提高终端设备的屏幕亮度,为终端设备提供更多的环境光亮度,增强照明条件,进而保证终端设备的前置摄像头可以采集到清晰的图像的,然后实现扫码。
步骤S507为可选步骤。可以在步骤S507之后,若确定环境光信息表征的数值大于或等于第三预设阈值,则执行步骤S508。或者,不需要执行步骤S507,在步骤S505之后,若确定终端设备进入预设位置,则执行步骤S508。或者,不需要执行步骤S505、S506、S507,在步骤S504之后,若确定姿态变化信息表征的数值大于或等于第一预设阈值、且屏幕方向为除去第一方向以外的方向,则执行步骤S508。
一个示例中,上述步骤S501-S507不限制各自的执行次序。
S508、调用终端设备的前置摄像头获取图像,并识别图像中的二维码信息。
示例性地,在上述步骤之后,终端设备调用终端设备的前置摄像头获取图像。终端设备获取图像之后识别图像中的二维码信息。
在步骤S507之后,终端设备可以再次从步骤S501开始执行。
举例来说,图6为本申请实施例提供的一种二维码识别方法的界面示意图一,如图6所示中的(a)所示,终端设备在运行其他应用,例如,终端设备在运行视频应用;此时,终端设备的屏幕方向朝上(上,指的是,世界坐标系的z轴的正方向)。如图6所示中的(b)所示,持有终端设备的用户发生翻腕动作,用户将终端设备的屏幕朝向下(世界坐标系的z轴的负方向)。进而,终端设备根据本实施例提供的方式,若确定终端设备处于亮屏解锁状态、接近光未遮挡的状态(非必要条件)、屏幕方向未朝上、有翻腕动作、终端设备在在预设地理围栏范围内(非必要条件)、环境光信息表征的数值大于或等于第三预设阈值(非必要条件),则开启前置摄像头采集图像并识别二维码。然后,如图6所示中的(c)所示,终端设备不会改变图6中的(a)的界面,依然显示的是终端设备正在运行的应用的界面,但是终端设备在后台调用终端设备的前置摄像头去获取图像,并在后台识别图像中的二维码信息。接着,终端设备在识别完二维码信息之后,如图6所示中的(d)所示,终端设备直接调起二维码信息对应的界面,例如显示应用程序A的转账的界面。
图6所示中的(d)仅仅是二维码信息对应的界面的一个示例,与所述二维码信息对应的应用的界面,可以包括:微信应用的界面,比如,微信付款界面、微信小程序的界面(比如健康码界面、点餐界面等),支付宝应用的界面,比如,支付宝的付款界面、支付宝小程序的界面(比如健康码界面、点餐界面等),会议应用的界面,连接wifi的界面,快递的取件界面,等等。
举例来说,图7为本申请实施例提供的一种二维码识别方法的界面示意图二,如图7所示中的(a)所示,终端设备在运行其他应用,例如,终端设备在运行视频应用;此时,终端设备的屏幕方向朝上(上,指的是,世界坐标系的z轴的正方向)。如图7所示中的(b)所示,持有终端设备的用户发生翻腕动作,用户将终端设备的屏幕朝向下(世界坐标系的z轴的负方向)。进而,终端设备根据本实施例提供的方式,若确定终端设备处于亮屏解锁状态、接近光未遮挡的状态(非必要条件)、屏幕方向未朝上、有翻腕动作、终端设备在在预设地理围栏范围内(非必要条件)、环境光信息表征的数值大于或等于第三预设阈值(非必要条件),则开启前置摄像头采集图像并识别二维码。如图7所示中的(c)所示,终端设备调用终端设备的前置摄像头去获取图像,并识别图像中的二维码信息,终端设备可以显示一个扫码界面。然后,终端设备在识别完二维码信息之后,如图7所示中的(d)所示,终端设备直接调起二维码信息对应的界面,例如显示应用程序A的转账的界面。
举例来说,图8为本申请实施例提供的一种二维码识别方法的界面示意图三,如图8所示中的(a)所示,终端设备处于桌面状态,即,终端设备没有在前端运行应用;此时,终端设备的屏幕方向朝上(上,指的是,世界坐标系的z轴的正方向)。如图8所示中的(b)所示,持有终端设备的用户发生翻腕动作,用户将终端设备的屏幕朝向下(世界坐标系的z轴的负方向)。进而,终端设备根据本实施例提供的方式,若确定终端设备处于亮屏解锁状态、终端设备处于桌面状态、接近光未遮挡的状态(非必要条件)、屏幕方向未朝上、有翻腕动作、终端设备在在预设地理围栏范围内(非必要条件)、环境光信息表征的数值大于或等于第三预设阈值(非必要条件),则开启前置摄像头采集图像并识别二维码。然后,如图8所示中的(c)所示,终端设备不会改变图8中的(a)的界面,依然显示的是终端设备的桌面,但是终端设备在后台调用终端设备的前置摄像头去获取图像,并在后台识别图像中的二维码信息。接着,终端设备在识别完二维码信息之后,如图8所示中的(d)所示,终端设备直接调起二维码信息对应的界面,例如显示应用程序A的转账的界面。
举例来说,图9为本申请实施例提供的一种二维码识别方法的界面示意图四,如图9所示中的(a)所示,终端设备处于桌面状态,即,终端设备没有在前端运行应用;此时,终端设备的屏幕方向朝上(上,指的是,世界坐标系的z轴的正方向)。如图9所示中的(b)所示,持有终端设备的用户发生翻腕动作,用户将终端设备的屏幕朝向下(世界坐标系的z轴的负方向)。进而,终端设备根据本实施例提供的方式,若确定终端设备处于亮屏解锁状态、终端设备处于桌面状态、接近光未遮挡的状态(非必要条件)、屏幕方向未朝上、有翻腕动作、终端设备在在预设地理围栏范围内(非必要条件)、环境光信息表征的数值大于或等于第三预设阈值(非必要条件),则开启前置摄像头采集图像并识别二维码。如图9所示中的(c)所示,终端设备调用终端设备的前置摄像头去获取图像,并识别图像中的二维码信息,终端设备可以显示一个扫码界面。然后,终端设备在识别完二维码信息之后,如图9所示中的(d)所示,终端设备直接调起二维码信息对应的界面,例如显示应用程序A的转账的界面;
本实施例,若确定终端设备处于亮屏解锁状态、终端设备处于桌面状态(非必要条件)、接近光未遮挡的状态(非必要条件)、屏幕方向未朝上、有翻腕动作、终端设备在在预设地理围栏范围内(非必要条件)、环境光信息表征的数值大于或等于第三预设阈值(非必要条件),则开启前置摄像头采集图像并识别二维码。从而,直接根据终端设备的运行状态和姿态信息,确定调用前置摄像头去采集图像,并识别二维码信息。不在需要用户在终端设备上进行一系列触控操作,才可以触发终端设备去扫描二维码。节约了识别二维码的时间,提高了二维码识别效率。
图10为本申请实施例提供的又一种二维码识别方法的流程示意图。如图10所示,该方法可以包括:
S1001、确定终端设备的屏幕状态,若确定屏幕状态表征终端设备处于亮屏解锁状态,则执行后续步骤。
示例性地,本实施例的执行主体为终端设备、或者终端设备中的处理器、或者设置于终端设备的装置,对此不做限制。本实施例以执行主体为终端设备进行介绍。
S1002、确定终端设备的运行状态;若确定运行状态表征终端设备处于桌面状态,则执行步骤S1003。
示例性地,步骤S1002为可选步骤。
S1003、确定终端设备的接近光信息;若确定接近光信息表征的数值大于或等于第二预设阈值,则确定终端设备处于接近光未遮挡的状态。
示例性地,步骤S1003为可选步骤。
S1004、确定终端设备的姿态变化信息和屏幕方向;若确定姿态变化信息表征的数值大于或等于第一预设阈值、且屏幕方向为除去第一方向以外的方向,则执行后续步骤。
其中,第一方向为世界坐标系的z轴正方向。
S1005、确定终端设备的当前位置信息;若确定当前位置信息表征终端设备处于预设地理围栏范围之内,则确定终端设备进入预设位置。
示例性地,步骤S1005为可选步骤。
S1006、确定终端设备的环境光信息;若确定环境光信息表征的数值大于或等于第三预设阈值,则执行后续步骤。
示例性地,步骤S1006为可选步骤。
S1007、确定终端设备的环境光信息;若确定环境光信息表征的数值小于第三预设阈值,则自动调整终端设备的屏幕亮度大于或等于第三预设阈值,执行后续步骤。
步骤S1001-S1007,可以参考上述步骤S501-S507,不再赘述。
S1008、调取终端设备的前置摄像头,以第一帧率采集第一图像。
示例性地,终端设备调取前置摄像头,同时为了减少功耗,终端设备调用低功耗的驱动,以第一帧率采集第一图像。其中,第一帧率小于第二帧率;也可以设置第一帧率小于预设帧率阈值。其中,帧率,指的是,每秒传输帧数(Frames Per Second,简称FPS)。
从而,终端设备通过前置摄像头,以低帧率采集第一图像;终端设备所采集的第一图像的分辨率为第一分辨率;第一分辨率小于第二分辨率,所采集的第一图像是低分辨率的图像。
终端设备以低帧率采集第一图像时,终端设备的功耗较小,可以降低设备功耗。
S1009、判断第一图像中是否存在疑似二维码图像。
示例性地,终端设备中部署了神经网络分类模型(即,一级模型);终端设备基于神经网络分类模型对第一图像进行分类识别,得到第一识别结果,第一识别结果表征第一图像中的目标是否为二维码;即,第一识别结果表征第一图像中是否存在疑似二维码图像。
终端设备若确定第一图像中存在疑似二维码图像,则执行后续步骤;否则,间隔预设时间,再次执行步骤S1101。
其中,神经网络分类模型为基于第一训练集合进行训练所得到的。第一训练集合中包括多个第一训练图像,第一训练图像为标记出二维码的图像。
S1010、若确定第一图像中存在疑似二维码图像,则确定终端设备与疑似二维码图像之间的距离信息。
示例性地,终端设备若确定第一图像中存在疑似二维码图像,则终端设备可以基于飞行时间(Time of Flight,简称tof)技术,测量终端设备与第一图像中的疑似二维码图像之间的距离信息。终端设备若确定第一图像中不存在疑似二维码图像,则间隔预设时间之后,再次执行步骤S1001。
S1011、判断距离信息是否小于或等于预设距离。
S1012、若确定距离信息所表征的数值小于或等于预设距离,则执行步骤S1014。
示例性地,终端设备若确定终端设备与第一图像中的疑似二维码图像之间的距离信息,小于或等于预设距离,则确定终端设备距离疑似二维码图像是较近的,然后执行步骤S1014。
S1013、若确定距离信息所表征的数值大于预设距离,则生成并发出第一提示信息;其中,第一提示信息用于提示终端设备的前置摄像头需靠近疑似二维码图像。
示例性地,终端设备若确定终端设备与第一图像中的疑似二维码图像之间的距离信息,大于预设距离,则确定终端设备距离疑似二维码图像是较远的;终端设备需要提示用户将终端设备的前置摄像头靠近疑似二维码图像,终端设备可以生成并发出第一提示信息,第一提示信息包括以下的一种或多种:语音提示、震动提示、灯光提示。
例如,预设距离为一个取值范围,该取值范围为15厘米至40厘米。本申请所摄像头的视角(FOV)为100。
S1014、调取终端设备的前置摄像头,以第二帧率采集第二图像;其中,第一帧率小于第二帧率。
示例性地,在步骤S1012之后,或者若确定第一图像中存在疑似二维码图像,就执行步骤S1014。终端设备调用终端设备的前置摄像头,以第二帧率去获取第二图像。第二帧率大于第一帧率;也可以设置第二帧率大于或等于预设帧率阈值。
从而,终端设备通过前置摄像头,以更高的帧率采集第二图像;终端设备所采集的第二图像的分辨率为第二分辨率;第二分辨率大于上述第一分辨率,所采集的第二图像是高分辨率的图像。
在本步骤中,终端设备启动高功耗的驱动算法,抓取图像流,若一直未识别到二维码,最多连续抓取5秒图像流。
终端设备在确定第一图像中存在疑似二维码图像之后,或者在步骤S1012之后,通过前置摄像头,以高帧率采集第二图像,可以获取到清晰的第二图像;进而可以有效的、准确的识别出第二图像中的二维码。
S1015、识别第二图像中的二维码信息,并调用与二维码信息对应的应用的界面。
示例性地,终端设备识别第二图像中的二维码信息,得到第二识别结果,第二识别结果表征是否得到二维码信息。若确定第二识别结果表征得到二维码信息,则终端设备基于深度链接(Deeplink)技术,拉起与二维码信息对应的应用的界面;终端设备可以发出第三提示信息,第三提示信息表征已经自动拉起与二维码信息对应的应用的界面。若确定第二识别结果表征未得到二维码信息,则间隔预设时间,再次执行步骤S1001。
其中,终端设备基于二维码识别算法(即,二级模型),先对第二图像进行目标检测,再采用超分方式去放大第二图像(基于神经网络去实现),再进行二维码解码,得到第二识别结果。其中,二维码解码,包括如下过程:提取二维码区域图像、识别二维码区域图像得到第二识别结果。
其中,二维码识别算法为基于第二训练集合进行训练所得到的。第二训练集合中包括多个第二训练图像,第二训练图像为标记出二维码的高帧率图像。
例如,针对公众号的二维码,终端设备识别第二图像之后得到一个链接;终端设备就可以基于该链接在应用中显示公众号的文章。
一个示例中,识别图像中的二维码信息,包括:识别二维码信息,得到并显示多个二维码图像;响应于确认指令,调用与确认指令所指示的二维码图像对应的应用的界面;其中,确认指令用于指示用户所选择的二维码图像。例如,若识别第二图像之后,得到多个二维码图像,则若终端设备对多个二维码分别进行识别(例如,识别二维码在第二图像中的位置),生成并显示截图;终端设备在该截图中框出多个二维码图像,并提供交互按钮。并且,终端设备生成第二提示信息,第二提示信息表征提示用户进行二维码的选择,例如,通过语音、震动、灯光等进行提示。然后,用户选择其中一个二维码图像,进而终端设备确定出用户所选择的二维码图像。这个过程中,已经先对二维码进行解码了;只需要用户点击其中一个二维码图像,终端设备就可以拉起与该二维码图像对应的应用的界面。
在步骤S1015之后,终端设备可以再次从步骤S1001开始执行。
举例来说,图11为本申请实施例提供的又一种二维码识别方法的界面示意图一,如图11所示中的(a)所示,终端设备在运行其他应用,例如,终端设备在运行视频应用;此时,终端设备的屏幕方向朝上(上,指的是,世界坐标系的z轴的正方向)。如图11所示中的(b)所示,持有终端设备的用户发生翻腕动作,用户将终端设备的屏幕朝向下(世界坐标系的z轴的负方向)。进而,终端设备根据本实施例提供的方式,若确定终端设备处于亮屏解锁状态、接近光未遮挡的状态(非必要条件)、屏幕方向未朝上、有翻腕动作、终端设备在在预设地理围栏范围内(非必要条件)、环境光信息表征的数值大于或等于第三预设阈值(非必要条件),则开启前置摄像头采集图像并识别二维码。然后,如图11所示中的(c)所示,终端设备不会改变图11中的(a)的界面,依然显示的是终端设备正运行的应用的界面,但是终端设备在后台调用终端设备的前置摄像头去获取图像;终端设备采用本实施例的方式,在后台采集依次采集低帧率、高帧率图像,识别二维码。接着,终端设备在识别完二维码信息之后,如图11所示中的(d)所示,终端设备直接调起二维码信息对应的界面,例如显示应用程序A的转账的界面。如图11所示中的(e)所示,终端设备在确定应用程序A的转账的任务处理完毕之后,终端设备显示“支付完成”的提示。如图11所示中的(f)所示,终端设备在确定任务之后,自动关闭所拉起的应用,终端设备显示初始时所运行的视频应用。
举例来说,图12为本申请实施例提供的一种二维码识别方法的界面示意图二,如图12所示中的(a)所示,终端设备在运行其他应用,例如,终端设备在运行视频应用;此时,终端设备的屏幕方向朝上(上,指的是,世界坐标系的z轴的正方向)。如图12所示中的(b)所示,持有终端设备的用户发生翻腕动作,用户将终端设备的屏幕朝向下(世界坐标系的z轴的负方向)。进而,终端设备根据本实施例提供的方式,若确定终端设备处于亮屏解锁状态、接近光未遮挡的状态(非必要条件)、屏幕方向未朝上、有翻腕动作、终端设备在在预设地理围栏范围内(非必要条件)、环境光信息表征的数值大于或等于第三预设阈值(非必要条件),则开启前置摄像头采集图像并识别二维码。如图12所示中的(c)所示,终端设备调用终端设备的前置摄像头去获取图像;终端设备采用本实施例的方式,在后台采集依次采集低帧率、高帧率图像,识别二维码;终端设备可以显示一个扫码界面。然后,终端设备在识别完二维码信息之后,如图12所示中的(d)所示,终端设备直接调起二维码信息对应的界面,例如显示应用程序A的转账的界面。如图12所示中的(e)所示,终端设备在确定应用程序A的转账的任务处理完毕之后,终端设备显示“支付完成”的提示。如图12所示中的(f)所示,终端设备在确定任务之后,自动关闭所拉起的应用,终端设备显示初始时所运行的视频应用。
举例来说,图13为本申请实施例提供的又一种二维码识别方法的界面示意图三,如图13所示中的(a)所示,终端设备处于桌面状态,即,终端设备没有在前端运行应用;此时,终端设备的屏幕方向朝上(上,指的是,世界坐标系的z轴的正方向)。如图13所示中的(b)所示,持有终端设备的用户发生翻腕动作,用户将终端设备的屏幕朝向下(世界坐标系的z轴的负方向)。进而,终端设备根据本实施例提供的方式,若确定终端设备处于亮屏解锁状态、终端设备处于桌面状态、接近光未遮挡的状态(非必要条件)、屏幕方向未朝上、有翻腕动作、终端设备在在预设地理围栏范围内(非必要条件)、环境光信息表征的数值大于或等于第三预设阈值(非必要条件),则开启前置摄像头采集图像并识别二维码。如图13所示中的(c)所示,终端设备不会改变图13中的(a)的界面,依然显示的是终端设备的桌面,但是终端设备在后台调用终端设备的前置摄像头去获取图像;终端设备采用本实施例的方式,在后台采集依次采集低帧率、高帧率图像,识别二维码。接着,终端设备在识别完二维码信息之后,如图13所示中的(d)所示,终端设备直接调起二维码信息对应的界面,例如显示应用程序A的转账的界面。如图13所示中的(e)所示,终端设备在确定应用程序A的转账的任务处理完毕之后,终端设备显示“支付完成”的提示。如图13所示中的(f)所示,终端设备在确定任务之后,自动关闭所拉起的应用,终端设备恢复至初始时的桌面状态。
举例来说,图14为本申请实施例提供的又一种二维码识别方法的界面示意图四,如图14所示中的(a)所示,终端设备处于桌面状态,即,终端设备没有在前端运行应用;此时,终端设备的屏幕方向朝上(上,指的是,世界坐标系的z轴的正方向)。如图14所示中的(b)所示,持有终端设备的用户发生翻腕动作,用户将终端设备的屏幕朝向下(世界坐标系的z轴的负方向)。进而,终端设备根据本实施例提供的方式,若确定终端设备处于亮屏解锁状态、终端设备处于桌面状态、接近光未遮挡的状态(非必要条件)、屏幕方向未朝上、有翻腕动作、终端设备在在预设地理围栏范围内(非必要条件)、环境光信息表征的数值大于或等于第三预设阈值(非必要条件),则开启前置摄像头采集图像并识别二维码。如图14所示中的(c)所示,终端设备不会改变图14中的(a)的界面,终端设备在后台调用终端设备的前置摄像头去获取图像;终端设备采用本实施例的方式,在后台采集依次采集低帧率、高帧率图像,识别二维码;终端设备可以显示一个扫码界面。接着,终端设备在识别完二维码信息之后,如图14所示中的(d)所示,终端设备直接调起二维码信息对应的界面,例如显示应用程序A的转账的界面。如图14所示中的(e)所示,终端设备在确定应用程序A的转账的任务处理完毕之后,终端设备显示“支付完成”的提示。如图14所示中的(f)所示,终端设备在确定任务之后,自动关闭所拉起的应用,终端设备恢复至初始时的桌面状态。
本实施例,上一实施例的基础上,终端设备先基于前置摄像头采集低帧率图像;终端设备若确定低帧率图像中不具有疑似二维码图像,则终端设备不需要去识别二维码,进而节约终端设备的资源;降低了终端设备的功耗。终端设备若确定低帧率图像中具有疑似二维码图像,终端设备再去基于前置摄像头采集高帧率图像,识别高帧率图像中的二维码,进而拉起与二维码对应的应用的界面。并且,若终端设备识别到高帧率图像中具有多个二维码,可以提供交互方式,由用户选择需要处理的二维码。
图15为本申请实施例提供的另一种二维码识别方法的流程示意图。如图15所示,该方法可以包括:
S1501、确定终端设备的屏幕状态,若确定屏幕状态表征终端设备处于亮屏解锁状态,则执行后续步骤。
示例性地,本实施例的执行主体为终端设备、或者终端设备中的处理器、或者设置于终端设备的装置,或者电子设备,对此不做限制。本实施例以执行主体为终端设备进行介绍。
终端设备基于应用(Application,简称app)层面,间隔性的获取终端设备的屏幕状态;终端设备根据屏幕状态判断终端设备是否处于亮屏解锁状态。一个示例中,终端设备可以通过软件接口获取屏幕参数;由于屏幕参数指示出了终端设备处于黑屏状态、或者亮屏未解锁状态、或者亮屏解锁状态,进而终端设备可以根据所获取的屏幕参数,得到屏幕状态。
终端设备若确定屏幕状态表征终端设备处于亮屏解锁状态,则执行后续步骤;否则,间隔预设时间,再次执行步骤S1501。从而终端设备在确定终端设备处于黑屏状态、或者亮屏未解锁状态的时候,终端设备不会触发后置摄像头去采集图像,避免了无意义的触发动作;终端设备在确定终端设备处于亮屏解锁状态下的时候,才会执行后续动作,基于后续的判断过程去调取后置摄像头采集图像。
S1502、确定终端设备的运行状态;若确定运行状态表征终端设备处于桌面状态,则执行步骤S1503。
示例性地,终端设备若确定屏幕状态表征终端设备处于亮屏解锁状态,终端设备需要获取终端设备当前的运行状态。终端设备需要判断终端设备的运行状态,是否处于桌面状态。其中,处于桌面状态,指的是,终端设备当前运行桌面应用,没有处于前台的其他应用。
一个示例中,终端设备可以通过软件接口获取运行参数;由于运行参数指示出了终端设备处于桌面状态、或者应用运行状态,进而终端设备可以根据运行参数,确定出终端设备是否处于桌面状态。
终端设备若确定终端设备的运行状态表征终端设备处于桌面状态,则执行后续步骤;否则,间隔预设时间,再次执行步骤S1501。在终端设备在前台运行其他应用的时候,若打断其他应用去调取后置摄像头,则有可能会导致其他应用的运行出现异常。终端设备在确定终端设备处于桌面状态的时候,才会执行后续动作,基于后续的判断过程去调取后置摄像头采集图像;从而,避免在终端设备基于前台运行其他应用的时候,若直接打断其他应用的运行,会导致其他应用或终端设备出现异常的问题。
其中,步骤S1502为可选步骤。可以在步骤S1501之后,若确定屏幕状态表征终端设备处于亮屏解锁状态,则执行步骤S1503。或者,可以在步骤S1502之后,若确定运行状态表征终端设备处于桌面状态,则执行步骤S1503。
S1503、确定终端设备的屏幕方向和环境光信息;若确定屏幕方向为除去第二方向的方向、且环境光信息表征的数值大于或等于第四预设阈值,则执行后续步骤。
其中,第二方向为世界坐标系的z轴负方向。
示例性地,在步骤S1501之后,或者在步骤S1502之后,或者在步骤S1503之后,终端设备获取终端设备的屏幕方向和环境光信息。
终端设备中设置有陀螺仪传感器。终端设备中的陀螺仪传感器在当前时刻采集的角度数据;终端设备可以直接根据该角度数据所指示的角度,确定出终端设备的屏幕方向。一个示例中,陀螺仪传感器采集到在当前时刻的xyz轴数据;终端设备获取陀螺仪传感器所采集的xyz轴数据,然后,终端设备根据xyz轴数据判断终端设备的屏幕方向,是否未朝向世界坐标系的z轴负方向,即,判断终端设备的屏幕方向是否未朝下。
其中,本实施例中,终端设备的屏幕方向的“朝上”,指的是,终端设备的屏幕朝向“世界坐标系的z轴正方向”;第一方向,指的是,世界坐标系的z轴正方向。
终端设备的屏幕方向的“朝下”,指的是,终端设备的屏幕朝向“世界坐标系的z轴负方向”;第二方向,指的是,世界坐标系的z轴负方向。
终端设备中设置有环境光传感器,环境光传感器可以获取终端设备的环境光数据。终端设备在服务执行环境(Service Execution Environment,简称SEE)环境的sensorhub层面上,获取环境光传感器所采集的环境光数据;然后,终端设备基于当前时刻下的环境光数据,得到环境光信息,环境光信息表征终端设备在当前时刻下的环境光数值。然后,终端设备判断环境光信息表征的数值是否大于等于第三预设阈值。终端设备若确定环境光信息表征的数值大于等于第三预设阈值,则确定终端设备所出的环境不是较为幽暗环境,是可以保证终端设备的后置摄像头可以采集到清晰的图像的,并执行后续步骤;终端设备若确定环境光信息表征的数值小于第三预设阈值,则确定终端设备所出的环境不是较为幽暗环境。
例如,第三预设阈值为10勒克斯(lux)。
基于上述原理,终端设备确定屏幕方向为除去第二方向的方向,则确定终端设备的屏幕方向未朝下;并且,终端设备确定环境光信息表征的数值大于或等于第四预设阈值,则确定终端设备所处于的环境不是幽暗环境,然后,终端设备确定执行后续步骤。否则,再次执行步骤S1501。
从而,在本实施例中,终端设备在确定终端设备所处于的环境不是幽暗环境、并且终端设备的屏幕方向未朝下,进而去调去终端设备的后置摄像头采集图像,并识别图像中的二维码。进而不需要用户与终端设备之间进行多次人机交互,才可以去触发终端设备识别二维码;减少了用户的操作次数,加快了识别二维码的效率,提高了用户体验。
S1504、确定终端设备的当前位置信息;若确定当前位置信息表征终端设备处于预设地理围栏范围之内,则确定终端设备进入预设位置。
示例性地,步骤S1104为可选步骤。
终端设备还可以获取终端设备的当前位置信息。终端设备根据当前位置信息,检测终端设备是否在预设地理围栏范围之内。若确定终端设备在预设地理围栏范围内,则确定终端设备进入预设位置,并且执行后续步骤;若确定终端设备不在预设地理围栏范围内,则再次执行步骤S1101。
步骤S1504为可选步骤。可以在步骤S1504之后,若确定终端设备进入预设位置,则执行步骤S1505。或者,不需要执行步骤S1504,在步骤S1503之后,若确定屏幕方向为除去第二方向的方向、且环境光信息表征的数值大于或等于第四预设阈值,则执行步骤S1505。
一个示例中,上述步骤S1501-S1504不限制各自的执行次序。
S1505、调用终端设备的后置摄像头获取图像,并识别图像中的二维码信息。
示例性地,在上述步骤之后,终端设备调用终端设备的后置摄像头获取图像。终端设备获取图像之后识别图像中的二维码信息。
在步骤S1505之后,终端设备可以再次从步骤S1501开始执行。
举例来说,图16为本申请实施例提供的另一种二维码识别方法的界面示意图一,如图16所示中的(a)所示,终端设备在运行其他应用,例如,终端设备在运行视频应用。如图16所示中的(b)所示,持有终端设备的用户将终端设备的后置摄像头对着桌面,此时,终端设备的屏幕朝向上(世界坐标系的z轴的正方向)。进而,终端设备根据本实施例提供的方式,若确定终端设备处于亮屏解锁状态、屏幕方向未朝下、环境光信息表征的数值大于或等于第四预设阈值、终端设备在在预设地理围栏范围内(非必要条件),则开启后置摄像头采集图像并识别二维码。
然后,如图16所示中的(c)所示,终端设备不会改变图16中的(a)的界面,依然显示的是终端设备正在运行的应用的界面,但是终端设备在后台调用终端设备的后置摄像头去获取图像,并在后台识别图像中的二维码信息。接着,终端设备在识别完二维码信息之后,如图16所示中的(d)所示,终端设备直接调起二维码信息对应的界面,例如显示应用程序A的转账的界面。
或者,如图16所示中的(b)所示之后,终端设备调用终端设备的前置摄像头去获取图像,并识别图像中的二维码信息,终端设备可以显示一个扫码界面。然后,终端设备在识别完二维码信息之后,终端设备直接调起二维码信息对应的界面,例如显示应用程序A的转账的界面。图16中未显示。
举例来说,图17为本申请实施例提供的另一种二维码识别方法的界面示意图二,如图17所示中的(a)所示,终端设备处于桌面状态,即,终端设备没有在前端运行应用。如图17所示中的(b)所示,持有终端设备的用户将终端设备的后置摄像头对着桌面,此时,终端设备的屏幕朝向上(世界坐标系的z轴的正方向)。进而,终端设备根据本实施例提供的方式,若确定终端设备处于亮屏解锁状态、终端设备处于桌面状态、屏幕方向未朝下、环境光信息表征的数值大于或等于第四预设阈值、终端设备在在预设地理围栏范围内(非必要条件),则开启后置摄像头采集图像并识别二维码。
然后,如图17所示中的(c)所示,终端设备不会改变图17中的(a)的界面,依然显示的桌面,但是终端设备在后台调用终端设备的后置摄像头去获取图像,并在后台识别图像中的二维码信息。接着,终端设备在识别完二维码信息之后,如图17所示中的(d)所示,终端设备直接调起二维码信息对应的界面,例如显示应用程序A的转账的界面。
或者,如图17所示中的(b)所示之后,终端设备调用终端设备的前置摄像头去获取图像,并识别图像中的二维码信息,终端设备可以显示一个扫码界面。然后,终端设备在识别完二维码信息之后,终端设备直接调起二维码信息对应的界面,例如显示应用程序A的转账的界面。图17中未显示。
举例来说,图18为本申请实施例提供的另一种二维码识别方法的界面示意图三,如图18所示中的(a)所示,终端设备在运行其他应用,例如,终端设备在运行视频应用。如图18所示中的(b)所示,持有终端设备的用户将终端设备的后置摄像头对着墙面,此时,终端设备的屏幕未朝下(下,指的是世界坐标系的z轴的负方向)。进而,终端设备根据本实施例提供的方式,若确定终端设备处于亮屏解锁状态、屏幕方向未朝下、环境光信息表征的数值大于或等于第四预设阈值、终端设备在在预设地理围栏范围内(非必要条件),则开启后置摄像头采集图像并识别二维码。
然后,如图18所示中的(c)所示,终端设备不会改变图18中的(a)的界面,依然显示的是终端设备正在运行的应用的界面,但是终端设备在后台调用终端设备的后置摄像头去获取图像,并在后台识别图像中的二维码信息。接着,终端设备在识别完二维码信息之后,如图18所示中的(d)所示,终端设备直接调起二维码信息对应的界面,例如显示应用程序A的转账的界面。
或者,如图18所示中的(b)所示之后,终端设备调用终端设备的前置摄像头去获取图像,并识别图像中的二维码信息,终端设备可以显示一个扫码界面。然后,终端设备在识别完二维码信息之后,终端设备直接调起二维码信息对应的界面,例如显示应用程序A的转账的界面。图18中未显示。
举例来说,图19为本申请实施例提供的另一种二维码识别方法的界面示意图四,如图19所示中的(a)所示,终端设备处于桌面状态,即,终端设备没有在前端运行应用。如图19所示中的(b)所示,持有终端设备的用户将终端设备的后置摄像头对着墙面,此时,终端设备的屏幕未朝下(下,指的是世界坐标系的z轴的负方向)。进而,终端设备根据本实施例提供的方式,若确定终端设备处于亮屏解锁状态、终端设备处于桌面状态、屏幕方向未朝下、环境光信息表征的数值大于或等于第四预设阈值、终端设备在在预设地理围栏范围内(非必要条件),则开启后置摄像头采集图像并识别二维码。
然后,如图19所示中的(c)所示,终端设备不会改变图19中的(a)的界面,依然显示的桌面,但是终端设备在后台调用终端设备的后置摄像头去获取图像,并在后台识别图像中的二维码信息。接着,终端设备在识别完二维码信息之后,如图19所示中的(d)所示,终端设备直接调起二维码信息对应的界面,例如显示应用程序A的转账的界面。
或者,如图19所示中的(b)所示之后,终端设备调用终端设备的前置摄像头去获取图像,并识别图像中的二维码信息,终端设备可以显示一个扫码界面。然后,终端设备在识别完二维码信息之后,终端设备直接调起二维码信息对应的界面,例如显示应用程序A的转账的界面。图19中未显示。
本实施例,若确定终端设备处于亮屏解锁状态、终端设备处于桌面状态、屏幕方向未朝下、环境光信息表征的数值大于或等于第四预设阈值、终端设备在预设地理围栏范围内(非必要条件),则开启后置摄像头采集图像并识别二维码。从而,直接根据终端设备的运行状态、姿态信息和环境光,确定调用后置摄像头去采集图像,并识别二维码信息。不在需要用户在终端设备上进行一系列触控操作,才可以触发终端设备去扫描二维码。节约了识别二维码的时间,提高了二维码识别效率。
图20为本申请实施例提供的再一种二维码识别方法的流程示意图。如图20所示,该方法可以包括:
S2001、确定终端设备的屏幕状态,若确定屏幕状态表征终端设备处于亮屏解锁状态,则执行后续步骤。
示例性地,本实施例的执行主体为终端设备、或者终端设备中的处理器、或者设置于终端设备的装置,对此不做限制。本实施例以执行主体为终端设备进行介绍。
S2002、确定终端设备的运行状态;若确定运行状态表征终端设备处于桌面状态,则执行步骤S2003。
示例性地,步骤S2002为可选步骤。
S2003、确定终端设备的屏幕方向和环境光信息;若确定屏幕方向为除去第二方向的方向、且环境光信息表征的数值大于或等于第四预设阈值,则执行后续步骤。
其中,第二方向为世界坐标系的z轴负方向。
S2004、确定终端设备的当前位置信息;若确定当前位置信息表征终端设备处于预设地理围栏范围之内,则确定终端设备进入预设位置。
示例性地,步骤S2004为可选步骤。
一个示例中,上述步骤S2001-S2004不限制各自的执行次序;
步骤S2001-S2004,可以参考上述步骤S1501-S1504,不再赘述。
S2005、调取终端设备的前置摄像头,以第一帧率采集第一图像。
示例性地,终端设备调取后置摄像头,同时为了减少功耗,终端设备调用低功耗的驱动,以第一帧率采集第一图像。其中,第一帧率小于第二帧率;也可以设置第一帧率小于预设帧率阈值。其中,帧率,指的是,每秒传输帧数(Frames Per Second,简称FPS)。
从而,终端设备通过后置摄像头,以低帧率采集第一图像;终端设备所采集的第一图像的分辨率为第一分辨率;第一分辨率小于第二分辨率,所采集的第一图像是低分辨率的图像。
终端设备以低帧率采集第一图像时,终端设备的功耗较小,可以降低设备功耗。
S2006、判断第一图像中是否存在疑似二维码图像。
示例性地,终端设备中部署了神经网络分类模型(即,一级模型);终端设备基于神经网络分类模型对第一图像进行分类识别,得到第一识别结果,第一识别结果表征第一图像中的目标是否为二维码;即,第一识别结果表征第一图像中是否存在疑似二维码图像。
终端设备若确定第一图像中存在疑似二维码图像,则执行后续步骤;否则,间隔预设时间,再次执行步骤S2001。
其中,神经网络分类模型为基于第一训练集合进行训练所得到的。第一训练集合中包括多个第一训练图像,第一训练图像为标记出二维码的图像。
S2007、若确定第一图像中存在疑似二维码图像,则确定终端设备与疑似二维码图像之间的距离信息。
示例性地,终端设备若确定第一图像中存在疑似二维码图像,则终端设备可以基于飞行时间(Time of Flight,简称tof)技术,测量终端设备与第一图像中的疑似二维码图像之间的距离信息。终端设备若确定第一图像中不存在疑似二维码图像,则间隔预设时间之后,再次执行步骤S2001。
S2008、判断距离信息是否小于或等于预设距离。
S2009、若确定距离信息所表征的数值小于或等于预设距离,则执行步骤S2011。
示例性地,终端设备若确定终端设备与第一图像中的疑似二维码图像之间的距离信息,小于或等于预设距离,则确定终端设备距离疑似二维码图像是较近的,然后执行步骤S2011。
S2010、若确定距离信息所表征的数值大于预设距离,则生成并发出第一提示信息;其中,第一提示信息用于提示终端设备的后置摄像头需靠近疑似二维码图像。
示例性地,终端设备若确定终端设备与第一图像中的疑似二维码图像之间的距离信息,大于预设距离,则确定终端设备距离疑似二维码图像是较远的;终端设备需要提示用户将终端设备的后置摄像头靠近疑似二维码图像,终端设备可以生成并发出第一提示信息,第一提示信息包括以下的一种或多种:语音提示、震动提示、灯光提示。
S2011、调取终端设备的后置摄像头,以第二帧率采集第二图像;其中,第一帧率小于第二帧率。
示例性地,在步骤S2009之后,或者若确定第一图像中存在疑似二维码图像,就执行步骤S2011。终端设备调用终端设备的后置摄像头,以第二帧率去获取第二图像。第二帧率大于第一帧率;也可以设置第二帧率大于或等于预设帧率阈值。
从而,终端设备通过后置摄像头,以更高的帧率采集第二图像;终端设备所采集的第二图像的分辨率为第二分辨率;第二分辨率大于上述第一分辨率,所采集的第二图像是高分辨率的图像。
在本步骤中,终端设备启动高功耗的驱动算法,抓取图像流,若一直未识别到二维码,最多连续抓取5秒图像流。
S2012、识别第二图像中的二维码信息,并调用与二维码信息对应的应用的界面。
示例性地,终端设备识别第二图像中的二维码信息,得到第二识别结果,第二识别结果表征是否得到二维码信息。若确定第二识别结果表征得到二维码信息,则终端设备基于深度链接(Deeplink)技术,拉起与二维码信息对应的应用的界面;终端设备可以发出第三提示信息,第三提示信息表征已经自动拉起与二维码信息对应的应用的界面。若确定第二识别结果表征未得到二维码信息,则间隔预设时间,再次执行步骤S2001。
其中,终端设备基于二维码识别算法(即,二级模型),先对第二图像进行目标检测,再采用超分方式去放大第二图像(基于神经网络去实现),再进行二维码解码,得到第二识别结果。其中,二维码解码,包括如下过程:提取二维码区域图像、识别二维码区域图像得到第二识别结果。
例如,针对公众号的二维码,终端设备识别第二图像之后得到一个链接;终端设备就可以基于该链接在应用中显示公众号的文章。
一个示例中,识别图像中的二维码信息,包括:识别二维码信息,得到并显示多个二维码图像;响应于确认指令,调用与确认指令所指示的二维码图像对应的应用的界面;其中,确认指令用于指示用户所选择的二维码图像。
例如,若识别第二图像之后,得到多个二维码图像,则若终端设备对多个二维码分别进行识别(例如,识别二维码在第二图像中的位置),生成并显示截图;终端设备在该截图中框出多个二维码图像,并提供交互按钮。并且,终端设备生成第二提示信息,第二提示信息表征提示用户进行二维码的选择,例如,通过语音、震动、灯光等进行提示。然后,用户选择其中一个二维码图像,进而终端设备确定出用户所选择的二维码图像。这个过程中,已经先对二维码进行解码了;只需要用户点击其中一个二维码图像,终端设备就可以拉起与该二维码图像对应的应用的界面。
在步骤S2012之后,终端设备可以再次从步骤S2001开始执行。
举例来说,图21为本申请实施例提供的再一种二维码识别方法的界面示意图一,如图21所示中的(a)所示,终端设备在运行其他应用,例如,终端设备在运行视频应用。如图21所示中的(b)所示,持有终端设备的用户将终端设备的后置摄像头对着桌面,此时,终端设备的屏幕朝向上(世界坐标系的z轴的正方向)。进而,终端设备根据本实施例提供的方式,若确定终端设备处于亮屏解锁状态、屏幕方向未朝下、环境光信息表征的数值大于或等于第四预设阈值、终端设备在在预设地理围栏范围内(非必要条件),则开启后置摄像头采集图像并识别二维码。如图21所示中的(c)所示,终端设备依然显示的是终端设备正运行的应用的界面,终端设备在后台调用终端设备的后置摄像头去获取图像,并在后台识别图像中的二维码信息。如图21所示中的(c)所示,终端设备调用终端设备的后置摄像头去获取图像,并识别图像中的二维码信息。如图21所示中的(d)所示,终端设备采用本实施例的方式,采集依次采集低帧率、高帧率图像,识别二维码,拉起应用的界面;可以得到一个应用程序A的转账的界面。如图21所示中的(e)所示,终端设备在确定应用程序A的转账的任务处理完毕之后,终端设备显示“支付完成”的提示。如图21所示中的(f)所示,终端设备在确定任务之后,自动关闭所拉起的应用,终端设备显示初始时所运行的视频应用。
举例来说,图22为本申请实施例提供的再一种二维码识别方法的界面示意图二,如图22所示中的(a)所示,终端设备处于桌面状态,即,终端设备没有在前端运行应用。如图22所示中的(b)所示,持有终端设备的用户将终端设备的后置摄像头对着桌面,此时,终端设备的屏幕朝向上(世界坐标系的z轴的正方向)。进而,终端设备根据本实施例提供的方式,若确定终端设备处于亮屏解锁状态、终端设备处于桌面状态、屏幕方向未朝下、环境光信息表征的数值大于或等于第四预设阈值、终端设备在在预设地理围栏范围内(非必要条件),则开启后置摄像头采集图像并识别二维码。如图22所示中的(c)所示,终端设备调用终端设备的后置摄像头去获取图像,并识别图像中的二维码信息。如图22所示中的(c)所示,终端设备依然显示的是桌面,终端设备在后台调用终端设备的后置摄像头去获取图像,并在后台识别图像中的二维码信息。如图22所示中的(d)所示,终端设备采用本实施例的方式,采集依次采集低帧率、高帧率图像,识别二维码,拉起应用的界面;可以得到一个应用程序A的转账的界面。如图22所示中的(e)所示,终端设备在确定应用程序A的转账的任务处理完毕之后,终端设备显示“支付完成”的提示。如图22所示中的(f)所示,终端设备在确定任务之后,自动关闭所拉起的应用,终端设备恢复至初始时的桌面状态。
举例来说,图23为本申请实施例提供的再一种二维码识别方法的界面示意图三,如图23所示中的(a)所示,终端设备在运行其他应用,例如,终端设备在运行视频应用。如图23所示中的(b)所示,持有终端设备的用户将终端设备的后置摄像头对着墙面,此时,终端设备的屏幕未朝下(下,指的是世界坐标系的z轴的负方向)。进而,终端设备根据本实施例提供的方式,若确定终端设备处于亮屏解锁状态、屏幕方向未朝下、环境光信息表征的数值大于或等于第四预设阈值、终端设备在在预设地理围栏范围内(非必要条件),则开启后置摄像头采集图像并识别二维码。如图23所示中的(c)所示,终端设备依然显示的是终端设备正运行的应用的界面,终端设备在后台调用终端设备的后置摄像头去获取图像,并在后台识别图像中的二维码信息。如图23所示中的(d)所示,终端设备采用本实施例的方式,采集依次采集低帧率、高帧率图像,识别二维码,拉起应用的界面;可以得到一个应用程序A的转账的界面。如图23所示中的(e)所示,终端设备在确定应用程序A的转账的任务处理完毕之后,终端设备显示“支付完成”的提示。如图23所示中的(f)所示,终端设备在确定任务之后,自动关闭所拉起的应用,终端设备显示初始时所运行的视频应用。
举例来说,图24为本申请实施例提供的再一种二维码识别方法的界面示意图四,如图24所示中的(a)所示,终端设备处于桌面状态,即,终端设备没有在前端运行应用。如图24所示中的(b)所示,持有终端设备的用户将终端设备的后置摄像头对着墙面,此时,终端设备的屏幕未朝下(下,指的是世界坐标系的z轴的负方向)。进而,终端设备根据本实施例提供的方式,若确定终端设备处于亮屏解锁状态、终端设备处于桌面状态、屏幕方向未朝下、环境光信息表征的数值大于或等于第四预设阈值、终端设备在在预设地理围栏范围内(非必要条件),则开启后置摄像头采集图像并识别二维码。如图24所示中的(c)所示,终端设备调用终端设备的后置摄像头去获取图像,并识别图像中的二维码信息。如图24所示中的(c)所示,终端设备依然显示的是桌面,终端设备在后台调用终端设备的后置摄像头去获取图像,并在后台识别图像中的二维码信息。如图24所示中的(d)所示,终端设备采用本实施例的方式,采集依次采集低帧率、高帧率图像,识别二维码,拉起应用的界面;可以得到一个应用程序A的转账的界面。如图24所示中的(e)所示,终端设备在确定应用程序A的转账的任务处理完毕之后,终端设备显示“支付完成”的提示。如图24所示中的(f)所示,终端设备在确定任务之后,自动关闭所拉起的应用,终端设备恢复至初始时的桌面状态。
一个示例中,图25为本申请实施例提供的二维码界面示意图,如图25所示中的(a)所示,终端设备识别第二图像中的二维码信息,得到并显示二维码A、二维码B。如图25所示中的(b)所示,用户触控终端设备区选择二维码A,进而终端设备调用与二维码图像A对应的应用的界面,终端设备显示一个点餐界面,该点餐界面中包括多个餐品,例如,餐品A、餐品B、餐品C、餐品D、餐品E。
本实施例,上一实施例的基础上,终端设备先基于后置摄像头采集低帧率图像;终端设备若确定低帧率图像中不具有疑似二维码图像,则终端设备需要去识别二维码,进而节约终端设备的资源;降低了终端设备的功耗。终端设备若确定低帧率图像中具有疑似二维码图像,终端设备再去基于后置摄像头采集高帧率图像,识别高帧率图像中的二维码,进而拉起与二维码对应的应用的界面。并且,若终端设备识别到高帧率图像中具有多个二维码,可以提供交互方式,由用户选择需要处理的二维码。
一个示例中,图26为本申请实施例提供的二维码识别方法的软件架构示意图,如图26所示,本申请提供的各个实施例,均可以适配到图26提供软件架构中。如图26所示,终端设备中部署有应用层、架构层、硬件抽象层、内核层、服务中心;并且终端设备设置有硬件,硬件包括有摄像头,摄像头包括前置摄像头,和/或,后置摄像头。
其中,应用层中部署有至少一个应用(Application,简称APP)、感知服务;其中,感知服务提供了订阅管理的服务和AO管理的服务。
架构层中部署有相机服务、Hao service&Aon service。
硬件抽象层中部署有AP camera HAL层 service、二维码识别算法引擎。
内核层中三部剧有摄像头驱动。
服务中心包括至少一个传感器(环境光传感器、接近光传感器、陀螺仪传感器、加速传感器)。通过环境光传感器采集环境光。通过接近光传感器采集环境光。通过陀螺仪传感器和加速传感器采集屏幕姿态(即,姿态信息)。服务中心部署有二维码的第一识别算法(用于识别有无疑似二维码)、以及CamX。
通过图26提供的软件架构,可以通过服务中心中的传感器,获取姿态信息。通过CamX、Hao service&Aon service,再依次通过应用层的应用、架构层的相机服务、硬件抽象层的AP camera HAL层 service、通过内核层的低功耗的摄像头驱动,去调用摄像头采集低帧率图像。将低帧率图像,反向传递会服务中心的第一识别算法;进而识别低帧率图像中是否存在疑似二维码。若确定存在疑似二维码,则通过CamX、Hao service&Aon service,再依次通过应用层的应用、架构层的相机服务、硬件抽象层的AP camera HAL层 service、通过内核层的低功耗的摄像头驱动,去调用摄像头采集高帧率图像。然后,依次通过硬件抽象层的AP camera HAL层 service、架构层的相机服务,将高帧率图像传送给应用层中的应用,去识别高帧率图像中的二维码;此时,应用可以调用二维码识别算法引擎去识别高帧率图像中的二维码。
上述主要从方法的角度对本申请实施例提供的方案进行了介绍。为了实现上述功能,其包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所公开的实施例描述的各示例的方法步骤,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
本申请实施例可以根据上述方法示例对二维码识别方法的装置进行功能模块的划分,例如可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本申请实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
图27为本申请实施例提供的一种芯片的结构示意图。如图27所示,芯片270包括一个或两个以上(包括两个)处理器2701、通信线路2702、通信接口2703和存储器2704。
在一些实施方式中,存储器2704存储了如下的元素:可执行模块或者数据结构,或者他们的子集,或者他们的扩展集。
上述本申请实施例描述的方法可以应用于处理器2701中,或者由处理器2701实现。处理器2701可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述第一设备或第二设备执行方法的各步骤可以通过处理器2701中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器2701可以是通用处理器(例如,微处理器或常规处理器)、数字信号处理器(digital signal processing,DSP)、专用集成电路(applicationspecific integrated circuit,ASIC)、现成可编程门阵列(field-programmable gatearray,FPGA)或者其他可编程逻辑器件、分立门、晶体管逻辑器件或分立硬件组件,处理器2701可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。
结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。其中,软件模块可以位于随机存储器、只读存储器、可编程只读存储器或带电可擦写可编程存储器(electricallyerasable programmable read only memory,EEPROM)等本领域成熟的存储介质中。该存储介质位于存储器2704,处理器2701读取存储器2704中的信息,结合其硬件完成上述方法的步骤。
处理器2701、存储器2704以及通信接口2703之间可以通过通信线路2702进行通信。
图28为本申请实施例提供的一种电子设备的结构示意图,如图28所示,电子设备2800包括上述芯片和显示单元。显示单元用于执行上述实施例提供的方法的显示的步骤。
在上述实施例中,存储器存储的供处理器执行的指令可以以计算机程序产品的形式实现。其中,计算机程序产品可以是事先写入在存储器中,也可以是以软件形式下载并安装在存储器中。
本申请实施例还提供一种计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行计算机程序指令时,全部或部分地产生按照本申请实施例的流程或功能。计算机可以是通用计算机、专用计算机、计算机网络或者其他可编程装置。计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(digital subscriber line,DSL)或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。计算机可读存储介质可以是计算机能够存储的任何可用介质或者是包括一个或多个可用介质集成的服务器、数据中心等数据存储设备。例如,可用介质可以包括磁性介质(例如,软盘、硬盘或磁带)、光介质(例如,数字通用光盘(digital versatile disc,DVD))、或者半导体介质(例如,固态硬盘(solid state disk,SSD))等。
本申请实施例还提供一种计算机可读存储介质。上述实施例中描述的方法可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。计算机可读介质可以包括计算机存储介质和通信介质,还可以包括任何可以将计算机程序从一个地方传送到另一个地方的介质。存储介质可以是可由计算机访问的任何目标介质。
作为一种可能的设计,计算机可读介质可以包括紧凑型光盘只读储存器(compactdisc read-only memory,CD-ROM)、RAM、ROM、EEPROM或其它光盘存储器;计算机可读介质可以包括磁盘存储器或其它磁盘存储设备。而且,任何连接线也可以被适当地称为计算机可读介质。例如,如果使用同轴电缆,光纤电缆,双绞线,DSL或无线技术(如红外,无线电和微波)从网站,服务器或其它远程源传输软件,则同轴电缆,光纤电缆,双绞线,DSL或诸如红外,无线电和微波之类的无线技术包括在介质的定义中。如本文所使用的磁盘和光盘包括光盘(CD),激光盘,光盘,数字通用光盘(digital versatile disc,DVD),软盘和蓝光盘,其中磁盘通常以磁性方式再现数据,而光盘利用激光光学地再现数据。
上述的组合也应包括在计算机可读介质的范围内。以上,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。

Claims (14)

1.一种二维码识别方法,其特征在于,所述方法包括:
确定终端设备的屏幕状态;
若确定所述屏幕状态表征所述终端设备处于亮屏解锁状态,则确定所述终端设备的姿态变化信息和屏幕方向;
若确定姿态变化信息表征的数值大于或等于第一预设阈值、且所述屏幕方向为除去第一方向以外的方向,则调用所述终端设备的前置摄像头获取图像,识别所述图像中的二维码信息,并显示与所述二维码信息对应的应用的界面;其中,所述第一方向为世界坐标系的z轴正方向。
2.根据权利要求1所述的方法,其特征在于,确定所述终端设备的姿态变化信息,包括:
获取所述终端设备中的加速度传感器在预设时段内采集的加速度变化数据,和/或,获取所述终端设备中的陀螺仪传感器在所述预设时段内采集的角度变化数据;
根据所述加速度变化数据,和/或,角度变化数据,确定所述姿态变化信息。
3.根据权利要求1所述的方法,其特征在于,确定所述终端设备的屏幕方向,包括:
获取所述终端设备中的陀螺仪传感器在当前时刻所采集的角度数据;
根据所述角度数据,确定所述终端设备的屏幕方向。
4.根据权利要求1所述的方法,其特征在于,在确定所述终端设备的姿态变化信息和屏幕方向之前,还包括:
确定所述终端设备的接近光信息;
若确定所述接近光信息表征的数值大于或等于第二预设阈值,则确定所述终端设备处于接近光未遮挡的状态。
5.根据权利要求1所述的方法,其特征在于,在调用所述终端设备的前置摄像头获取图像之前,还包括:
确定所述终端设备的环境光信息;
若确定所述环境光信息表征的数值大于或等于第三预设阈值,则执行调用所述终端设备的前置摄像头获取图像的步骤。
6.根据权利要求1所述的方法,其特征在于,在确定所述终端设备的姿态变化信息和屏幕方向之前,还包括:
确定所述终端设备的运行状态;
若确定所述运行状态表征所述终端设备处于桌面状态,则执行确定所述终端设备的姿态变化信息和屏幕方向的步骤。
7.根据权利要求1所述的方法,其特征在于,在调用所述终端设备的前置摄像头获取图像之前,还包括:
确定所述终端设备的当前位置信息;
若确定所述当前位置信息表征所述终端设备处于预设地理围栏范围之内,则确定所述终端设备进入预设位置。
8.根据权利要求1-7中任一项所述的方法,其特征在于,调用所述终端设备的前置摄像头获取图像,包括:
调取所述终端设备的前置摄像头,以第一帧率采集第一图像;
若确定所述第一图像中存在疑似二维码图像,则调取所述终端设备的前置摄像头,以第二帧率采集第二图像;其中,所述第一帧率小于所述第二帧率。
9.根据权利要求8所述的方法,其特征在于,在调取所述终端设备的前置摄像头,以第二帧率采集第二图像之前,还包括:
确定所述终端设备与所述疑似二维码图像之间的距离信息;
若确定所述距离信息所表征的数值小于或等于预设距离,则执行调取所述终端设备的前置摄像头,以第二帧率采集第二图像的步骤。
10.根据权利要求9所述的方法,其特征在于,所述方法,还包括:
若确定所述距离信息所表征的数值大于所述预设距离,则生成并发出第一提示信息;其中,所述第一提示信息用于提示所述终端设备的前置摄像头需靠近所述疑似二维码图像。
11.根据权利要求1-7中任一项所述的方法,其特征在于,识别所述图像中的二维码信息,包括:
识别所述二维码信息,得到并显示多个二维码图像;
响应于确认指令,调用与所述确认指令所指示的二维码图像对应的应用的界面;其中,所述确认指令用于指示用户所选择的二维码图像。
12.一种电子设备,其特征在于,包括:用于执行权利要求1-11任一项所述方法的各个步骤的单元。
13.一种电子设备,其特征在于,包括:处理器、显示单元和接口电路,所述接口电路用于与其它装置通信,所述处理器用于执行权利要求1-11任一项所述的方法中处理的步骤,所述显示单元用于执行权利要求1-11任一项所述的方法中显示的步骤。
14.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有指令,当所述指令被执行时,使得计算机执行如权利要求1-11任一项所述的方法。
CN202210855909.XA 2022-07-21 2022-07-21 二维码识别方法、电子设备以及存储介质 Active CN115079886B (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN202210855909.XA CN115079886B (zh) 2022-07-21 2022-07-21 二维码识别方法、电子设备以及存储介质
CN202211592097.0A CN117435087A (zh) 2022-07-21 2022-07-21 二维码识别方法、电子设备以及存储介质
EP22899604.7A EP4336330A1 (en) 2022-07-21 2022-12-05 Two-dimensional code recognition method, electronic device, and storage medium
PCT/CN2022/136697 WO2024016564A1 (zh) 2022-07-21 2022-12-05 二维码识别方法、电子设备以及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210855909.XA CN115079886B (zh) 2022-07-21 2022-07-21 二维码识别方法、电子设备以及存储介质

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN202211592097.0A Division CN117435087A (zh) 2022-07-21 2022-07-21 二维码识别方法、电子设备以及存储介质

Publications (2)

Publication Number Publication Date
CN115079886A CN115079886A (zh) 2022-09-20
CN115079886B true CN115079886B (zh) 2023-01-03

Family

ID=83259303

Family Applications (2)

Application Number Title Priority Date Filing Date
CN202210855909.XA Active CN115079886B (zh) 2022-07-21 2022-07-21 二维码识别方法、电子设备以及存储介质
CN202211592097.0A Pending CN117435087A (zh) 2022-07-21 2022-07-21 二维码识别方法、电子设备以及存储介质

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN202211592097.0A Pending CN117435087A (zh) 2022-07-21 2022-07-21 二维码识别方法、电子设备以及存储介质

Country Status (3)

Country Link
EP (1) EP4336330A1 (zh)
CN (2) CN115079886B (zh)
WO (1) WO2024016564A1 (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115079886B (zh) * 2022-07-21 2023-01-03 荣耀终端有限公司 二维码识别方法、电子设备以及存储介质
CN117148959A (zh) * 2023-02-27 2023-12-01 荣耀终端有限公司 眼动追踪的帧率调整方法及相关装置
CN116257139B (zh) * 2023-02-27 2023-12-22 荣耀终端有限公司 眼动追踪方法和电子设备

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8989820B2 (en) * 2010-11-10 2015-03-24 Ipcomm Method for suspending transmission and reception of text messages and phone calls
CN106874817A (zh) * 2016-07-27 2017-06-20 阿里巴巴集团控股有限公司 二维码识别方法、设备和移动终端
CN106548561B (zh) * 2016-12-06 2018-10-02 韩楷文 带前置摄像头的立式一体机的控制方法
CN108038405A (zh) * 2017-12-22 2018-05-15 努比亚技术有限公司 扫码补光方法、移动终端及计算机可读存储介质
CN108491240A (zh) * 2018-02-27 2018-09-04 努比亚技术有限公司 一种支付显示方法、终端及计算机可读存储介质
CN110324443A (zh) * 2018-03-31 2019-10-11 广东欧珀移动通信有限公司 翻转模组和具有翻转模组的电子装置
CN109033912A (zh) * 2018-07-25 2018-12-18 维沃移动通信有限公司 一种识别码的识别方法及移动终端
CN109711226A (zh) * 2018-12-25 2019-05-03 努比亚技术有限公司 二维码识别方法、装置、移动终端及可读存储介质
CN110309684A (zh) * 2019-06-10 2019-10-08 广东以诺通讯有限公司 一种手机扫码方法及系统
CN111262975B (zh) * 2020-01-08 2021-06-08 华为技术有限公司 亮屏控制方法、电子设备、计算机可读存储介质和程序产品
CN112383664B (zh) * 2020-10-15 2021-11-19 华为技术有限公司 一种设备控制方法、第一终端设备、第二终端设备及计算机可读存储介质
CN112613475B (zh) * 2020-12-31 2023-10-31 Oppo广东移动通信有限公司 扫码界面显示方法、装置、移动终端及存储介质
CN112862479A (zh) * 2021-01-29 2021-05-28 中国银联股份有限公司 一种基于终端姿态的业务处理方法及装置
CN113919382B (zh) * 2021-04-29 2023-04-28 荣耀终端有限公司 一种扫码的方法及装置
CN113436576B (zh) * 2021-05-28 2022-05-06 荣耀终端有限公司 应用于二维码扫描的oled显示屏调光方法及装置
CN113643024A (zh) * 2021-07-06 2021-11-12 阿里巴巴新加坡控股有限公司 图形码处理方法、装置及电子设备
CN113935349A (zh) * 2021-10-18 2022-01-14 交互未来(北京)科技有限公司 一种扫描二维码的方法、装置、电子设备及存储介质
CN114449171B (zh) * 2022-01-28 2023-10-27 青岛海信移动通信技术有限公司 控制摄像头的方法、终端设备、存储介质及程序产品
CN115079886B (zh) * 2022-07-21 2023-01-03 荣耀终端有限公司 二维码识别方法、电子设备以及存储介质

Also Published As

Publication number Publication date
WO2024016564A1 (zh) 2024-01-25
CN117435087A (zh) 2024-01-23
WO2024016564A9 (zh) 2024-05-10
EP4336330A1 (en) 2024-03-13
CN115079886A (zh) 2022-09-20

Similar Documents

Publication Publication Date Title
CN115079886B (zh) 二维码识别方法、电子设备以及存储介质
CN113542485B (zh) 一种通知处理方法、电子设备及计算机可读存储介质
EP3979061A1 (en) Quick application starting method and related device
WO2021179773A1 (zh) 图像处理方法和装置
CN113254120B (zh) 数据处理方法和相关装置
EP4020491A1 (en) Fitness-assisted method and electronic apparatus
WO2022127787A1 (zh) 一种图像显示的方法及电子设备
WO2022007862A1 (zh) 图像处理方法、系统、电子设备及计算机可读存储介质
EP4109882A1 (en) Image processing method and electronic device
WO2023000772A1 (zh) 模式切换方法、装置、电子设备及芯片系统
WO2023065873A1 (zh) 帧率调整方法、终端设备及帧率调整系统
CN113591517A (zh) 一种活体检测方法及相关设备
CN113986070A (zh) 一种应用卡片的快速查看方法及电子设备
WO2022057384A1 (zh) 拍摄方法和装置
WO2021238740A1 (zh) 一种截屏方法及电子设备
CN111524528B (zh) 防录音检测的语音唤醒方法及装置
CN114399622A (zh) 图像处理方法和相关装置
CN116382896B (zh) 图像处理算法的调用方法、终端设备、介质及产品
CN116048831B (zh) 一种目标信号处理方法和电子设备
CN115827207B (zh) 应用程序的切换方法和电子设备
CN115933952B (zh) 一种触控采样率调节方法及相关装置
WO2023236801A1 (zh) 识别图形码的方法及电子设备
CN116704080B (zh) 眨眼动画生成方法、装置、设备及存储介质
CN114035989A (zh) 卡死识别方法及电子设备
CN118118778A (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