本发明涉及移动应用技术领域,尤其是涉及支付、显示、摄像、图像识别等功能模块。
背景技术:
目前,随着网络支付的兴起,商场、超市、便利店、饭店等场所均开始使用快捷方便的免密扫码支付方式,消费者在收银台打开支付软件面向扫码设备出示支付码,完成扫码支付。
该方法的缺陷和不足是:终端通常是在屏幕中心位置显示支付码,用户手持终端面向扫码收银设备展示支付码时,常常因为屏幕中心位置偏离扫码收银设备摄像头扫码区域,导致扫码速度慢或者扫码不成功。
技术实现要素:
本发明的目的在于提供一种支付码显示方法及系统,以解决扫码速度慢或者扫码不成功的问题。
本发明提供的方法,包括:
接受支付请求,第一终端屏幕的预设位置显示支付码一,同时启动所述第一终端前置摄像头获取扫码设备图像一;
确定所述扫码设备摄像头中心在所述图像一中的位置一,其中所述图像一中心点与第一终端前置摄像头中心点重合;
计算所述位置一投影到所述第一终端所在平面的位置二;
根据位置二在所述第一终端屏幕显示支付码二。
进一步的,根据所述扫码设备图像获取所述扫码设备摄像头中心在所述图像中的位置一,还包括:
将所述图像一与预存扫码设备图像集合进行比对,获取所述扫码设备型号;
根据所述型号计算所述扫码设备摄像头中心在所述图像一中的位置一。
进一步的,所述计算所述位置一投影到所述第一终端所在平面的位置二,包括:
测量所述扫码设备摄像头中心到第一终端显示平面的垂线距离;
根据所述垂线距离和所述第一终端前置摄像头视场角,计算所述图像一在实际场景中的尺寸,将所述图像一以扫码设备摄像头为中心等比例放大到实际场景中的尺寸,得到图像二。
进一步的,计算所述位置一投影到所述第一终端所在平面的位置二,包括:
以第一终端显示平面建立平面直角坐标系一,获取所述第一终端前置摄像头中心点坐标一(x1,y1);
以图像二平面建立平面直角坐标系二,获取所述扫码设备摄像头在所述图像二中的坐标二(x2,y2);
当所述第一终端显示平面与所述图像二平面平行时,所述坐标系二中的原点在坐标系一中的投影为(x1,y1),则坐标二在所述坐标系一中的投影坐标三(x1 x2,y1 y2),所述坐标三即为所述位置二。
进一步的,所述根据位置二在所述第一终端屏幕显示支付码二,包括:
判断在所述第一终端显示平面以所述位置二为中心能否完全显示支付码二:
若能,则在所述第一终端显示平面以所述位置二为中心点显示支付码二;
若不能,则在所述第一终端显示平面水平和/或竖直移动位置二,以完全显示支付码二。
进一步的,所述根据位置二在所述第一终端屏幕显示支付码二,还包括:
所述支付码二在所述第一终端屏幕显示位置根据位置二变动而动态调整。
本发明的另一目的在于提出一种支付码显示系统,包括:
第一终端:用于接受支付请求,在第一终端预算位置显示支付码一;
扫码设备:用于提供扫码设备图像一,根据扫码设备图像一获取扫码设备摄像头中心在图像中的位置一;
服务器:用于计算所述位置一投影到所述第一终端所在平面的位置二,根据位置二将支付码二推送给所述第一终端屏幕。
使用本方法,用户打开支付软件出示支付码,第一终端接收到用户打开支付码请求时,预算位置显示支付码,同时启动前置摄像头进行扫描识别扫码设备图像,确定扫码摄像头在图像中的位置,计算扫码摄像头中心位置投影到第一终端显示屏所在平面的位置,以此位置为中心点在第一终端屏幕选择合适位置显示支付码,从而在第一终端屏幕中心位置未与扫码设备摄像头位置对齐时也能实现快速扫码,完成支付。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1-10为本发明实施例提供的方法示意图;
图11为本发明实施例提供的方法流程图;
具体实施方式
下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本发明的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
如图1-图10所示,本发明实施例提供的,包括:
1、接受支付请求,第一终端屏幕的预设位置显示支付码一,同时启动所述第一终端前置摄像头获取扫码设备图像一;
确定所述扫码设备摄像头中心在所述图像一中的位置一,其中所述图像一中心点与第一终端前置摄像头中心点重合
具体的,如图1所示,打开支付软件,点击付款码,进入支付app,用户发起支付请求,进入图2所示的付款页面,第一终端收到开启支付码请求后,在第一终端屏幕中心位置显示支付码一,同时启动第一终端前置摄像头,进行扫描识别。
第一终端前置摄像头获取到扫码设备图像一,设扫码设备图像一为m1,m1中心点为c1,c1即第一终端前置摄像头中心点。将图像m1与预存在服务器中的所有扫码设备图像集合进行比对,如比对不成功,继续比对直至成功,如比对成功,判定该扫码设备具体型号为n,结合已知n型号扫码设备摄像头中心点与该设备外框轮廓(正面)的固定位置比例关系如:该中心点竖向位置/该扫码设备高度=k1,该中心横向位置/该扫码收银设备宽度=k2,k1、k2是固定值,通过图像识别技术识别出该扫码设备图像(外框轮廓、宽、高),也就可以根据k1、k2得出该扫码设备摄像头中心在图像m1中的位置为位置一a1点。
2、计算所述位置一投影到所述第一终端所在平面的位置二
通过第一终端前置摄像头测量前置摄像头到实际场景中被拍摄的扫码设备所在平面中心距离做垂线为h,已知第一终端前置摄像头视场角为β,依据h与β,可以计算出第一终端前置摄像头扫描识别到的图像m1在实际场景中的尺寸为长l、宽d,将前置摄像头获取到的图像m1以c1为中心等比例放大到实际场景尺寸得到图像二,记为m2。
以第一终端显示平面建立平面直角坐标系一,设坐标原点o为第一终端屏幕中心点,设x轴为通过原点o的显示平面水平线,设y轴为通过原点o的显示平面竖直线。设在平面直角坐标系一中第一终端前置摄像头中心点c1坐标为(x1,y1)。
以图像m2平面建立平面直角坐标系二,设图像m2中心点c2为坐标原点,设x轴为通过c2点的图像m2平面水平线,设y轴为通过c2点的图像m2平面竖直线,则在图像m2中扫码设备摄像头位置a2坐标为(x2,y2)。
已知第一终端显示平面与所述图像二平面平行,平面直角坐标系二中的原点c2在平面直角坐标系一中的投影为点c1(x1,y1),即图像m2平面中心投影位置与第一终端前置摄像头中心位置重合。记图像m2平面中的a2点在平面直角坐标系一中的投影为a,可知a坐标为(x1 x2,y1 y2)。
3、根据位置二在所述第一终端屏幕显示支付码二
判断在所述第一终端显示平面以所述位置二为中心能否完全显示支付码,即:当位置二到屏幕边缘(上下左右4边)最小距离≥终端屏幕显示支付码宽度的一半时,在以位置二为中心点可以在终端屏幕完全显示支付码;当位置二到屏幕边缘(上下左右4边)最小距离<终端屏幕显示支付码宽度的一半时,在以位置二为支付码中心点不能在终端屏幕完全显示支付码。
若能,则在所述第一终端显示平面以所述位置二为中心点显示支付码二;
若不能,即以位置二为支付码中心点不能在终端屏幕完全显示支付码(有一部分将超出屏幕),此时在终端屏幕上水平或竖直移动支付码直至支付码能在终端屏幕中完全显示。例如位置二距离屏幕上边缘距离<终端屏幕显示支付码宽度的一半时,则将位置二向屏幕下方竖直移动到离屏幕上边缘距离等于终端屏幕显示的支付码宽度一半的位置,以该位置作为支付码中心点显示支付码二。
支付码二在第一终端屏幕显示位置随扫码识别到的图像中扫码设备摄像头位置a点变动而实时变动,使得支付码二始终保持在正对着扫码设备摄像头的中心位置显示支付码。
本发明实施例还提供一种支付码显示系统,其特征在于,包括:
第一终端:用于接受支付请求,在第一终端预设位置显示支付码一;根据位置二的变动动态调整显示支付码二。
扫码设备:用于提供扫码设备图像一,根据扫码设备图像一获取扫码设备摄像头中心在图像中的位置一;
服务器:用于计算所述位置一投影到所述第一终端所在平面的位置二,根据位置二将支付码二推送给所述第一终端屏幕。将所述图像一与预存扫码设备图像集合进行比对,获取比对结果。
根据所述比对结果判定所述扫码设备具体型号,根据所述型号计算所述扫码设备摄像头中心在所述图像一中的位置一,判断在所述第一终端显示平面以位置二为中心能否完全显示支付码。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
1.一种支付码显示方法,其特征在于,包括:
接受支付请求,第一终端屏幕的预设位置显示支付码一,同时启动所述第一终端前置摄像头获取扫码设备图像一;
确定所述扫码设备摄像头中心在所述图像一中的位置一,其中所述图像一中心点与第一终端前置摄像头中心点重合;
计算所述位置一投影到所述第一终端所在平面的位置二;
根据位置二在所述第一终端屏幕显示支付码二。
2.根据权利要求1所述的方法,其特征在于,根据所述扫码设备图像获取所述扫码设备摄像头中心在所述图像中的位置一,还包括:
将所述图像一与预存扫码设备图像集合进行比对,获取所述扫码设备型号;
根据所述型号计算所述扫码设备摄像头中心在所述图像一中的位置一。
3.根据权利要求1所述的方法,其特征在于,所述计算所述位置一投影到所述第一终端所在平面的位置二,包括:
测量所述扫码设备摄像头中心到第一终端显示平面的垂线距离;
根据所述垂线距离和所述第一终端前置摄像头视场角,计算所述图像一在实际场景中的尺寸,将所述图像一以扫码设备摄像头为中心等比例放大到实际场景中的尺寸,得到图像二。
4.根据权利要求3所述的方法,其特征在于,计算所述位置一投影到所述第一终端所在平面的位置二,包括:
以第一终端显示平面建立平面直角坐标系一,获取所述第一终端前置摄像头中心点坐标一(x1,y1);
以图像二平面建立平面直角坐标系二,获取所述扫码设备摄像头在所述图像二中的坐标二(x2,y2);
当所述第一终端显示平面与所述图像二平面平行时,所述坐标系二中的原点在坐标系一中的投影为(x1,y1),则坐标二在所述坐标系一中的投影坐标三(x1 x2,y1 y2),所述坐标三即为所述位置二。
5.根据权利要求4所述的方法,其特征在于,所述根据位置二在所述第一终端屏幕显示支付码二,包括:
判断在所述第一终端显示平面以所述位置二为中心能否完全显示支付码二:
若能,则在所述第一终端显示平面以所述位置二为中心点显示支付码二;
若不能,则在所述第一终端显示平面水平和/或竖直移动位置二,以完全显示支付码二。
6.根据权利要求5所述的方法,其特征在于,所述根据位置二在所述第一终端屏幕显示支付码二,还包括:
所述支付码二在所述第一终端屏幕显示位置根据位置二变动而动态调整。
7.一种支付码显示系统,其特征在于,包括:
第一终端:用于接受支付请求,在第一终端预算位置显示支付码一;
扫码设备:用于提供扫码设备图像一,根据扫码设备图像一获取扫码设备摄像头中心在图像中的位置一;
服务器:用于计算所述位置一投影到所述第一终端所在平面的位置二,根据位置二将支付码二推送给所述第一终端屏幕。
8.根据权利要求7所述的系统,其特征在于,所述服务器还用于:
将所述图像一与预存扫码设备图像集合进行比对,获取所述扫码设备型号;
根据所述型号计算所述扫码设备摄像头中心在所述图像一中的位置一。
9.根据权利要求8所述的系统,其特征在于,所述服务器还用于:判断在所述第一终端显示平面以位置二为中心能否完全显示支付码。
10.根据权利要求9所述的系统,其特征在于,所述第一终端根据位置二的变动动态调整显示支付码二。
技术总结