根据实时信息显示展现对象的方法和装置与流程

文档序号:12663918阅读:354来源:国知局
根据实时信息显示展现对象的方法和装置与流程

本申请涉及计算机及网络技术领域,尤其涉及一种根据实时信息显示展现对象的方法和装置。



背景技术:

随着摄像头、陀螺仪、加速度传感器、距离传感器等设备在终端上的普及,应用程序可以利用这些提供实时信息的设备,来实现新的功能,或者将已有的功能以全新的方式实现。在一些实现中,可以在实时信息发生变化时,使屏幕上显示的某个展现对象发生相应的变化,从而和用户产生互动,为用户带来直观而新颖的体验。

这些实现中,除了展现对象本身可以根据实时信息变化外,还可以按照实时信息使展现对象在屏幕上的显示位置发生变化。例如,根据实时视频中用户手的位置来决定将一个球显示在屏幕上的哪个位置,好像是用户将球拿在手上一样。

现有技术中,应用程序以某个周期提取从传感器等设备输出的实时信息,按照预置的算法将实时信息映射为对应的屏幕显示位置,并将展现对象现显示在该屏幕显示位置。这样,随着每周期实时信息的变化,展现对象将在屏幕上显示在新的位置,每个周期移动一次,看起来像是逐步移动。

按照这种实现方式,当实时信息变化较大时,展现对象在屏幕上的位置变化也较大,看起来像是展现对象在屏幕上发生跳变;而当实时信息连续几个周期变化很小时,看起来像是展现对象在屏幕上的抖动。在这两种情况下显示效果均不理想。



技术实现要素:

有鉴于此,本申请提供一种根据实时信息显示展现对象的方法,包括:

以一定周期获取对应于实时信息的位置信息;

根据上个周期获取的位置信息确定起点,根据本周期获取的位置信息确定终点;

将展现对象在起点和终点之间进行滑动显示。

本申请还提供了一种根据实时信息显示展现对象的装置,包括:

位置信息获取单元,用于以一定周期获取对应于实时信息的位置信息;

起止点确定单元,用于根据上个周期获取的位置信息确定起点,根据本周期获取的位置信息确定终点;

滑动显示单元,用于将展现对象在起点和终点之间进行滑动显示。

由以上技术方案可见,本申请的实施例中,根据相邻两个周期的实时信息对应的位置信息来确定起点和终点,并在起点和终点之间滑动显示展现对象,使得所显示的展现对象平滑的从起点滑动到终点,避免了实时信息变化较大时的突变和实时信息变化很小时的抖动现象,提高了展现对象的显示效果。

附图说明

图1是本申请实施例中一种根据实时信息显示展现对象的方法的流程图;

图2是本申请实施例中平均散列方式的散列点分布示意图;

图3是本申请实施例中加速散列方式的散列点分布示意图;

图4是本申请实施例中减速散列方式的散列点分布示意图;

图5是本申请应用示例中一种人脸登录的界面示意图;

图6是本申请应用示例中一种用户实时头像的显示流程图;

图7是终端或服务器的一种硬件结构图;

图8是本申请实施例中一种根据实时信息显示展现对象的装置的逻辑结 构图。

具体实施方式

本申请的实施例提出一种新的根据实时信息显示展现对象的方法,在两个相邻周期的实时信息对应的屏幕显示位置之间,以动画方式将展现对上个周期的屏幕显示位置滑动到本周期的屏幕显示位置,这样显示的展现对象不会因实时信息变化过大或过小而发生突变或抖动,具有更好的显示效果,从而解决现有技术中存在的问题。

本申请的实施例可以应用在能够获取到用来决定展现对象显示位置的实时信息、具有计算和存储能力的设备上,包括手机、平板电脑、PC(Personal Computer,个人电脑)、笔记本、服务器等。该设备可以从自身带有的传感器、摄像头的部件上读取实时信息,也可以通过网络从其他设备持续获得目标对象的实时信息。实时信息包括任何可以被设备采集的随时间变化的参数,例如实时视频中某个物体的移动速度、实时图片的灰度、工业控制过程的各种实时变量、终端的实时定位数据等等。此外,展现对象可以是非实时的图片、视频等,也可以实时图片和/或实时视频。本申请实施例对实时信息的种类及来源、展现对象的具体类型均不做限定。

本申请的实施例中,根据实时信息显示展现对象的方法的流程如图1所示,运行该流程的主体可以是应用程序,可以是应用程序中的进程或线程,还可以是某个服务、或者某个服务中的进程或线程。

步骤110,以一定周期获取对应于实时信息的位置信息。

根据实际应用场景的具体实现,位置信息可以是匹配显示展现对象的屏幕尺寸的屏幕位置坐标,也可以是能够用来确定屏幕位置坐标的其他参数(如屏幕比例坐标等);运行本申请实施例的主体可以从所在设备的传感器、摄像头的部件以一定周期读取实时信息、或者从网络中获得实时信息后,以实时信息为预置算法的输入来得到对应的位置信息,也可以直接从网络中获得对应于实时信息的位置信息,本申请的实施例不做限定。

根据实时信息生成对应的位置信息的方法可参照现有技术实现,不再赘述。

步骤120,根据上个周期获取的位置信息确定起点,根据本周期获取的位置信息确定终点。

如果所获取的位置信息是匹配显示展现对象的屏幕尺寸的屏幕位置坐标,则直接将上个周期的位置信息作为起点,将本周期的位置信息作为终点;否则按照位置信息与屏幕位置坐标的相互关系,将上个周期的位置信息转换为屏幕位置坐标后作为起点,将本周期的位置信息转换为屏幕位置坐标后作为终点。

将位置信息转化为屏幕位置坐标的方式通常因具体应用场景的不同而不同。例如,每个周期所获取的位置信息是屏幕比例坐标(sX,sY),其中:sX为X轴比例坐标,取值范围为[0,1),表示该位置点的X轴屏幕坐标相对于横轴X最大值的比例;sY为Y轴比例坐标,取值范围为[0,1),表示该位置点的Y轴屏幕坐标相对于纵轴Y最大值的比例。根据显示展现对象的屏幕的宽度和长度可以将sX和sY分别转换为屏幕位置坐标的横轴坐标值x和纵轴坐标值y;具体而言,设当前屏幕的总宽度为W,总长度为H,则用(sX,sY)转换而成的屏幕位置坐标为(sX*W,sY*H),其单位与W和H的单位相同,如同为像素点或毫米等。

步骤130,将展现对象在起点和终点之间进行滑动显示。

在确定本周期的起点和终点之后,即可进行本周期的滑动显示,将展现对象以动画方式从起点逐渐移到终点,看起来像是展现对象从起点滑动到了终点。进行滑动显示的具体方式可以参照现有技术中应用于各种动态图像、动画等的技术手段来实现,本申请实施例中不做限定。

在一个例子中,可以先确定起点和终点之间展现对象的滑动轨迹,在滑动轨迹上选择N(N为自然数)个散列位置点;再将展现对象依次以一定的单点显示时长显示在起点、N个散列位置点和终点,形成滑动效果。其中,滑动轨迹可以是直线,也可以是曲线;可以按照期望的滑动显示效果来以何 种方式选择散列点,如可以是平均、加速、减速等方式。设A为起点,B为终点,A、B之间的滑动轨迹为直线,平均散列方式的散列点平均分布在A和B点,如图2所示;加速散列方式的散列点沿从A到B的方向,散列点之间的距离逐渐增大,如图3所示;减速散列方式的散列点沿从A到B的方向,散列点之间的距离逐渐减小,如图4所示。

上述例子中,每个周期的滑动轨迹、N的具体数值、选择散列点的方式、单点显示时长可以相同,也可以不同;当采用每周期不同的滑动轨迹、N的具体数值、选择散列点的方式、和/或单点显示时长时,可以是从预置的若干种可选项中轮询或随机选择一种,也可以是根据位置信息或位置信息的变化来确定具体的滑动轨迹、N的具体数值、选择散列点的方式、和/或单点显示时长。本申请实施例均不做限定。

例如,可以根据本周期展现对象的滑动距离(由上个周期的位置信息、本周期的位置信息、以及本周期的滑动轨迹来决定),来选择N的数值和单点显示时长,如果滑动距离长,则增加N的数值,减少单点显示时长;如果滑动距离短,则减少N的数值,增加单点显示时长,从而达到更好的显示效果。

通常展现对象会有自己的形状,占据一定的屏幕显示区域,本申请实施例中所说的将展现对象显示在起点、终点和散列点,是指以起点、终点或散列点来定位展现对象上某个固定点,如中心点、左上边界点等。

需要说明的是,一个周期的滑动总时长,即展现对象从起点开始滑动到终点所需的时间,可以大于、小于或等于周期的长度。也就是说,在本周期开始时,上个周期展现对象的滑动显示可能已经结束、正好结束或者尚未结束。

如果本周期开始时上个周期的滑动显示尚未结束,可以将本周期的起点修改为本周期开始时展现对象的显示位置,并取消上个周期滑动显示尚未完成的部分。这样,展现对象将从本周期初始时所在的显示位置(即上个周期滑动过程的某个中间位置)开始向终点滑动,使得显示位置可以更加及时的 反映实时信息的变化,并且仍然能够达到平滑滑动展现对象的显示效果。

在一些应用场景中,在从实时信息得到对应的位置信息的处理过程中采用了机器学习算法,例如在按照对摄像头摄录的实时视频的某些特征值确定位置信息的应用场合,经常采用神经网络算法来进行视频特征值的识别。由于每次采集的实时信息和处理结果都会用来对算法本身做出修正,因此当上个周期与本周期的实时信息完全一致时,算法输出的位置信息可能会有小的差异,这样往往会让用户产生展现对象不稳定的感觉。

为了避免这种情况,可以在确定本周期滑动的起点和终点后,判断起点与终点之间的距离是否小于预定阈值,如果小于,则将展现对象显示在当前位置,不再进行本周期的的滑动显示。其中,预定阈值的选择可以按照机器学习算法自学习过程可能对位置信息造成的影响程度大小来确定。

可见,本申请的实施例中,将每个周期展现对象的位置变化以滑动显示的方式呈现出来,滑动显示的起点和终点由相邻两个周期的实时信息对应的位置信息来确定,从而使得所显示的展现对象平滑的从起点移动到终点,不会因实时信息变化过大或过小而发生展现对象的突变或抖动,提高了显示效果。

在本申请的一个应用示例中,一个终端App(应用程序)采用人脸认证登录,其登录界面如图5所示。App采用人脸识别技术,从来自终端摄像头的实时视频中提取用户头像,将用户实时头像作为展现对象显示在一个圆形框内。用户实时头像在屏幕上显示位置根据实时头像的左右偏转幅度和上下倾幅度来确定。

具体而言,App采用神经网络算法识别用户实时头像的正面在水平方向的转动角度和在垂直方向的转动角度,将水平方向的转动角度对应于X轴比例坐标sX,将垂直方向的转动角度对应于Y轴比例坐标sY。例如,当识别出用户实时头像是水平和垂直方向的正面头像时,对应的比例坐标为(0.5,0.5),用户实时头像将显示在屏幕的正中;当识别出的用户实时头像是水平方向的左侧面和垂直方向的正面,对应的比例坐标为(0,0.5),用户实时 头像将显示在屏幕左边界的中部。

这样,当用户改变其头部的左右偏转幅度和上下倾幅度时,图5所示的登录界面上的用户实时头像将随之改变显示位置。例如,用户可以通过向右侧转头将实时头像在屏幕上向右侧移动,通过低头将实时头像在屏幕上向下移动。当用户实时头像移入屏幕下方的预定标示位置时,App对用户实时头像进行人脸校验,对用户实时头像进行校验,校验成功后完成用户登录。

在App识别出实时视频中包括人脸后,采用图6所示的流程来实现用户实时头像的滑动。

步骤610,以一定周期读取神经网络算法的输出,获得与当前用户实时头像在水平方向的转动角度和在垂直方向的转动角度相对应的比例坐标(sX,sY)。

步骤620,将本周期获得的比例坐标(sX,sY)转换为本周期的屏幕位置坐标为(sX*W,sY*H)。以上个周期的屏幕位置坐标为起点A,本周期的屏幕位置坐标为终点B。

步骤630,判断AB之间的距离是否小于预定阈值,如果是,将用户实时头像在当前位置继续显示,不再进行本周期的滑动显示,转步骤610,等待下个周期的位置信息;如果否,执行步骤640。

步骤640,判断上个周期的滑动显示是否结束,如果是,转步骤660;如果否,执行步骤650;

步骤650,将起点A置为当前用户实时头像的显示位置的坐标,取消上个周期滑动显示在当前位置以后、尚未完成的部分。

步骤660,在平均、加速、减速散列方式中任选一种,将AB之间的线段按照选择的散列方式生成预定数目个散列点。

步骤670,将用户实时头像以预定的单点显示时长,依次显示在A点、从A到B方向的各个散列点、B点上,形成用户实时头像从A点滑动到B点的显示效果。

步骤680,判断用户实时头像是否到达预定标示位置,如果是,执行步 骤690;如果否,转步骤610,进行下个周期的处理。

步骤690,按照用户实时头像进行人脸校验,如果成功则完成用户登录,如果失败则用户登录失败。

与上述流程实现对应,本申请的实施例还提供了一种根据实时信息显示展现对象的装置。该装置可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为逻辑意义上的装置,是通过终端或服务器的CPU(Central Process Unit,中央处理器)将对应的计算机程序指令读取到内存中运行形成的。从硬件层面而言,除了图7所示的CPU、内存以及非易失性存储器之外,该装置所在的终端通常还包括用于进行无线信号收发的芯片等其他硬件,该装置所在的服务器通常还包括用于实现网络通信功能的板卡等其他硬件。

图8所示为本申请实施例提供的一种根据实时信息显示展现对象的装置,包括位置信息获取单元、起止点确定单元和滑动显示单元,其中:位置信息获取单元用于以一定周期获取对应于实时信息的位置信息;起止点确定单元用于根据上个周期获取的位置信息确定起点,根据本周期获取的位置信息确定终点;滑动显示单元用于将展现对象在起点和终点之间进行滑动显示。

可选的,所述装置还包括起点修改单元,用于在本周期开始时上个周期的滑动显示尚未结束的情况下,则将起点修改为本周期开始时展现对象的显示位置,并取消上个周期滑动显示尚未完成的部分。

可选的,所述装置还包括滑动取消单元,用于当所述起点与终点之间的距离小于预定阈值时,将展现对象显示在当前位置,不再进行本周期的滑动显示。

一个例子中,所述滑动显示单元可以包括散列点确定模块和散列点显示模块,其中:散列点确定模块用于确定起点和终点之间展现对象的滑动轨迹,在滑动轨迹上选择N个散列位置点;N为自然数;散列点显示模块用于将展现对象依次以一定的单点显示时长显示在起点、N个散列位置点和终点,形成滑动效果。

上个例子中,所述散列点确定模块可以具体用于:确定起点和终点之间展现对象的滑动轨迹,以平均、加速或减速方式在滑动轨迹上选择N个散列位置点。

可选的,所述展现对象包括:实时图片和/或实时视频。

一种实现方式中,所述展现对象包括:用户的实时头像视频;所述对应于实时信息的位置信息包括:与用户实时头像的正面在水平方向的转动角度相对应的X轴比例坐标,以及与用户实施头像的正面在垂直方向的转动角度相对应的Y轴比例坐标;所述起止点确定单元具体用于:根据屏幕的宽度和长度将上个周期的X轴比例坐标和Y轴比例坐标转换为起点在屏幕上的位置坐标,根据屏幕的宽度和长度将本周期的X轴比例坐标和Y轴比例坐标转换为终点在屏幕上的位置坐标。

上述实现方式中,所述装置还可以包括校验登录单元,用于当展现对象滑动到屏幕上的预定标示位置时,对用户的实时头像进行校验,校验成功后完成用户登录。

以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。

在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。

内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。

计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器 (EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。

还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。

本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1