一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

视频的播放方法、装置、设备及计算机可读存储介质与流程

2021-11-26 22:29:00 来源:中国专利 TAG:


1.本技术涉及计算机技术领域,尤其涉及一种视频的播放方法、装置、设备及计算机可读存储介质。


背景技术:

2.随着互联网技术的发展,基于智能终端的媒体信息传播也越来越普遍,比如,通过手机终端播放视频,在播放视频的过程中,通常会在视频画面中呈现一些文本信息,如弹幕、字幕等。
3.相关技术中,在视频画面中呈现一些文本信息时,通常是视频画面中的某一特定区域进行展示,如在视频画面的顶部展示,或者在视频画面的底部展示。对于一些与视频画面中的对象相关联的文本信息,无法让用户获取该文本信息所关联的对象。


技术实现要素:

4.本技术实施例提供一种视频的播放方法、装置及计算机可读存储介质,能够实现待展示文本与目标对象的人脸的关联展示,提升待展示文本展示的有效性及灵活性。
5.本技术实施例的技术方案是这样实现的:
6.本技术实施例提供一种视频的播放方法,包括:
7.在播放界面中播放目标视频;
8.在播放所述目标视频的过程中,当所述目标视频的视频画面中包含目标对象、且存在与所述目标对象相关联的待展示文本时,在与所述目标对象的人脸相关联的展示区域,展示所述待展示文本;
9.在展示所述待展示文本的过程中,当所述目标对象的人脸姿态发生变化时,伴随所述人脸姿态的变化,调整所述待展示文本的展示姿态。
10.本技术实施例提供一种视频的播放装置,包括:
11.播放模块,用于在播放界面中播放目标视频;
12.展示模块,用于在播放所述目标视频的过程中,当所述目标视频的视频画面中包含目标对象、且存在与所述目标对象相关联的待展示文本时,在与所述目标对象的人脸相关联的展示区域,展示所述待展示文本;
13.调整模块,用于在展示所述待展示文本的过程中,当所述目标对象的人脸姿态发生变化时,伴随所述人脸姿态的变化,调整所述待展示文本的展示姿态。
14.上述方案中,所述展示模块,还用于响应于针对所述播放界面中弹幕功能项的触发操作,当所述目标视频的视频画面中包含至少两个对象时,在所述目标视频的视频画面中呈现对象选取框;
15.基于所述对象选取框,接收到针对目标对象的选取操作;
16.响应于所述选取操作,呈现对应所述目标对象的弹幕输入框;
17.接收到基于所述弹幕输入框输入的弹幕信息,将所述弹幕信息作为与所述目标对
象相关联的待展示文本。
18.上述方案中,所述展示模块,还用于响应于针对所述播放界面中弹幕功能项的触发操作,在所述目标视频的视频画面中呈现弹幕输入框;
19.接收到基于所述弹幕输入框输入的弹幕信息,并将所述弹幕信息作为待展示文本;
20.当所述目标视频的视频画面中包含至少两个对象时,将所述待展示文本分别与各所述对象进行匹配,确定与所述待展示文本相匹配对象;
21.将所述相匹配的对象作为所述目标对象;
22.将所述弹幕信息与所述目标对象进行关联。
23.上述方案中,所述展示模块,还用于响应于针对所述播放界面中待展示文本的编辑操作,呈现至少两种待选择的颜色;
24.响应于至少两种待选择的颜色中目标颜色的选取操作,确定用于展示所述待展示文本的目标颜色;
25.采用所述目标颜色,展示所述待展示文本。
26.上述方案中,所述展示模块,还用于接收到针对所述待展示文本的第一位置调整指令,标识与所述目标对象的人脸相关联的展示区域;
27.响应于针对所述待展示文本的拖动操作,控制所述待展示文本在与所述目标对象相关联的展示区域中移动,以调整所述待展示文本在所述展示区域中的展示位置。
28.上述方案中,所述展示模块,还用于当存在至少两个与所述目标对象的人脸相关联的展示区域时,基于所述待展示文本的文本内容,确定至少两个所述展示区域中,与所述文本内容相匹配的展示区域;
29.在与所述文本内容相匹配的展示区域,展示所述待展示文本。
30.上述方案中,所述展示模块,还用于当存在多条与所述目标对象相关联的待展示文本时,在与所述目标对象的人脸相关联的展示区域,依次播放多条所述待展示文本。
31.上述方案中,所述展示模块,还用于当存在至少两个与所述目标对象的人脸相关联的展示区域时,接收到针对所述待展示文本的第二位置调整指令,标识至少两个所述展示区域;
32.响应于基于至少两个所述展示区域触发的选取操作,将所述选取操作对应的展示区域作为对应所述待展示文本的展示区域。
33.上述方案中,所述展示模块,还用于获取所述目标视频对应的字幕信息、以及所述字幕信息归属的视频画面中的对象;
34.当所述字幕信息中包含归属于所述目标对象的字幕内容时,将所述字幕内容作为与所述目标对象相关联的待展示文本。
35.上述方案中,所述展示模块,还用于获取所述目标对象的人脸区域尺寸;
36.基于所述人脸区域尺寸,确定与所述目标对象的人脸相关联的展示区域,以使所述展示区域的尺寸与所述人脸区域尺寸相匹配。
37.上述方案中,所述展示模块,还用于当弹幕信息的数量为至少两条、且至少两条弹幕信息对应至少两个用户时,确定各弹幕信息对应用户的用户级别;
38.基于所述用户级别,展示所述弹幕信息。
39.上述方案中,所述展示模块,还用于当存在多条与所述目标对象相关联的待展示文本时,分别确定各待展示文本所对应的展示区域;其中,所述待展示文本与所述展示区域一一对应;
40.分别通过各所述展示区域,展示相应的待展示文本。
41.上述方案中,所述展示模块,还用于生成对应所述待展示文本的特效动画;
42.播放所述特效动画,以展示所述待展示文本。
43.上述方案中,所述展示模块,还用于对所述待展示文本进行三维处理,生成三维立体形式的待展示文本;
44.展示所述三维立体形式的待展示文本。
45.上述方案中,所述调整模块,还用于当所述目标对象的人脸旋转时,确定所述目标对象人脸姿态发生变化;
46.伴随所述人脸姿态的变化,根据所述目标对象的人脸的旋转方向和旋转角度,控制所述展示文本跟随所述目标对象的人脸同步进行旋转,以调整所述待展示文本的展示姿态。
47.上述方案中,所述展示模块,还用于采用与所述目标视频的视频画面相匹配的展示颜色,展示所述待展示文本。
48.本技术实施例提供一种计算机设备,包括:
49.存储器,用于存储可执行指令;
50.处理器,用于执行所述存储器中存储的可执行指令时,实现本技术实施例提供的视频的播放方法。
51.本技术实施例提供一种计算机可读存储介质,存储有可执行指令,用于引起处理器执行时,实现本技术实施例提供的视频的播放方法。
52.本技术实施例具有以下有益效果:
53.应用上述实施例,通过在播放界面中播放目标视频;在播放所述目标视频的过程中,当所述目标视频的视频画面中包含目标对象、且存在与所述目标对象相关联的待展示文本时,在与所述目标对象的人脸相关联的展示区域,展示所述待展示文本;在展示所述待展示文本的过程中,当所述目标对象的人脸姿态发生变化时,伴随所述人脸姿态的变化,调整所述待展示文本的展示姿态;如此,待展示文本的展示姿态能够随着其关联的目标对象的人脸姿态的变化而变化,实现了待展示文本与目标对象的人脸的关联展示,提升了待展示文本展示的有效率及灵活性。
附图说明
54.图1是相关技术提供的视频播放界面示意图;
55.图2是相关技术提供的视频播放界面示意图;
56.图3是本技术实施例提供的视频的播放系统100的一个可选的架构示意图;
57.图4是本技术实施例提供的视频的播放方法的流程示意图;
58.图5是本技术实施例提供的播放界面示意图;
59.图6是本技术实施例提供的弹幕信息的输入过程示意图;
60.图7是本技术实施例提供的弹幕信息的输入过程示意图;
61.图8是本技术实施例提供的播放界面示意图;
62.图9是本技术实施例提供的播放界面示意图;
63.图10是本技术实施例提供的播放界面示意图;
64.图11是本技术实施例提供的播放界面示意图;
65.图12是本技术实施例提供的播放界面示意图;
66.图13a

13b是本技术实施例提供的播放界面示意图;
67.图14a

14b是本技术实施例提供的播放界面示意图;
68.图15是本技术实施例提供的播放界面示意图;
69.图16是本技术实施例提供的播放界面示意图;
70.图17是本技术实施例提供的视频的播放流程示意图;
71.图18是本技术实施例提供的人脸姿态估计方法的流程示意图;
72.图19是本技术实施例提供的实施渲染过程示意图;
73.图20是本技术实施例提供的文本图片在人头坐标系下的示意图;
74.图21是本技术实施例提供的视频的播放装置的结构示意图;
75.图22是本技术实施例提供的计算机设备的结构示意图。
具体实施方式
76.为了使本技术的目的、技术方案和优点更加清楚,下面将结合附图对本技术作进一步地详细描述,所描述的实施例不应视为对本技术的限制,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本技术保护的范围。
77.在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。
78.在以下的描述中,所涉及的术语“第一\第二\第三”仅仅是区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一\第二\第三”在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本技术实施例能够以除了在这里图示或描述的以外的顺序实施。
79.除非另有定义,本文所使用的所有的技术和科学术语与属于本技术的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本技术实施例的目的,不是旨在限制本技术。
80.对本技术实施例进行进一步详细说明之前,对本技术实施例中涉及的名词和术语进行说明,本技术实施例中涉及的名词和术语适用于如下的解释。
81.1)响应于,用于表示所执行的操作所依赖的条件或者状态,当满足所依赖的条件或状态时,所执行的一个或多个操作可以是实时的,也可以具有设定的延迟;在没有特别说明的情况下,所执行的多个操作不存在执行先后顺序的限制。
82.相关技术中,在展示待展示文本时,如弹幕信息、字幕内容等,均是在视频画面中的某一特定区域进行展示,如在视频画面的顶部展示,或者在视频画面的底部展示。
83.图1是相关技术提供的视频播放界面示意图,参见图1,图1所示的是悬浮型弹幕信息,也即弹幕信息201采用悬浮的方式从画面一侧移入,并从另一侧移出;图2是相关技术提
供的视频播放界面示意图,参见图2,如2所示的是智能抠图弹幕信息,在播放视频时,采用智能抠图的方式展示弹幕信息202,使弹幕信息不会遮挡人物。
84.申请人在实施本技术实施例时发现无论是飘浮型弹幕信息,还是智能抠图弹幕信息,均不能够让用户直观获知各弹幕信息所针对的对象。
85.基于此,本技术实施例提供一种视频的播放方法、装置、设备及计算机可读存储介质,能够实现待展示文本与目标对象的人脸的关联展示,以使用户能够清楚获知待展示文本所关联的目标对象。
86.参见图3,图3是本技术实施例提供的视频的播放系统100的一个可选的架构示意图,为实现支撑一个示例性应用,终端(示例性示出了终端400

1和终端400

2)通过网络300连接服务器200,网络300可以是广域网或者局域网,又或者是二者的组合。这里不对服务器及终端的数量做限制。
87.在实际实施时,终端上设置有客户端,如视频客户端,浏览器客户端,信息流客户端,教育客户端等,以用于视频的播放。
88.终端,用于接收到针对目标视频的播放指令,向服务器发送目标视频、待展示文本及目标视频的人脸姿态数据的获取请求;
89.服务器200,用于下发目标视频、待展示文本及目标视频的人脸姿态数据至终端;
90.终端,用于在播放界面中包含目标视频;在播放目标视频的过程中,当目标视频的视频画面中包含目标对象、且存在与目标对象相关联的待展示文本时,在与目标对象的人脸相关联的展示区域,展示待展示文本;在展示待展示文本的过程中,基于目标视频的人脸姿态数据,确定目标对象的人脸姿态发生变化时,伴随人脸姿态的变化,调整待展示文本的展示姿态。
91.在一些实施例中,服务器200可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(cdn,content delivery network)、以及大数据和人工智能平台等基础云计算服务的云服务器。终端可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表、电视终端、车载终端等,但并不局限于此。终端以及服务器可以通过有线或无线通信方式进行直接或间接地连接,本技术实施例中不做限制。
92.基于上述对本技术实施例的信息展示系统说明,下面说明本技术实施例提供的视频的播放方法。参见图4,图4是本技术实施例提供的视频的播放方法的流程示意图;在一些实施例中,该视频的播放方法可由终端单独实施,或由终端和服务器协同实施,以终端单独实施为例,本技术实施例提供的视频的播放方法包括:
93.步骤401:终端在播放界面中播放目标视频。
94.在实际实施时,终端上设置有客户端,用户可以通过客户端触发针对目标视频的播放指令,终端响应于播放指令,通过客户端呈现播放界面,并在播放界面中播放目标视频。
95.步骤402:在播放目标视频的过程中,当目标视频的视频画面中包含目标对象、且存在与目标对象相关联的待展示文本时,在与目标对象的人脸相关联的展示区域,展示待展示文本。
96.在实际实施时,待展示文本可以是用户输入的文本,如用户在观看目标视频的过程中所输入的弹幕信息;也可以是对目标视频进行识别得到的文本信息,如字幕内容。
97.其中,与目标对象的人脸相关联的展示区域,会随着目标对象的人脸位置的不同而发生变化,例如,与目标对象的人脸相关联的展示区域可以是目标对象的人脸周围的区域,如头顶区域。
98.在实际应用中,在播放目标视频的过程中,对于每一视频帧,判断该视频帧中是否包含目标对象,若包含,则进一步判断是否存在与该目标对象相关联的待展示文本、以及待展示文本所对应的视频帧,若与该视频帧对应的待展示文本、且该待展示文本与目标对象相关联,在与该视频帧中目标对象的人脸相关联的展示区域添加待展示文本,以在与目标对象的人脸相关联的展示区域,展示待展示文本。
99.这里,目标对象的数量可以为一个或者至少两个,当目标对象的数量为至少两个时,分别在与各目标对象的人脸相关联的展示区域,展示相应的待展示文本。
100.作为示例,图5是本技术实施例提供的播放界面示意图,参见图5,目标对象的数量为两个,即目标对象501和目标对象502,在目标对象501的头顶展示与目标对象501关联的待展示文本503,目标对象502的头顶展示与目标对象502关联的待展示文本504。
101.在一些实施例中,当待展示文本为弹幕信息时,弹幕信息可以是当前终端的用户所输入的弹幕信息,也可以是其他用户输入的弹幕信息。这里,当目标视频的视频画面中包含一个对象时,可以直接将视频画面中的对象作为与弹幕信息相关联的目标对象;当目标视频的视频画面中包含至少两个对象时,弹幕信息所关联的目标对象可以是由用户选择的,也可以是自动匹配得到的。
102.在一些实施例中,当弹幕信息是当前用户输入的弹幕信息时,终端在与目标对象的人脸相关联的展示区域,展示待展示文本之前,还可以响应于针对播放界面中弹幕功能项的触发操作,当目标视频的视频画面中包含至少两个对象时,在目标视频的视频画面中呈现对象选取框;基于对象选取框,接收到针对目标对象的选取操作;响应于选取操作,呈现对应目标对象的弹幕输入框;接收到基于弹幕输入框输入的弹幕信息,将弹幕信息作为与目标对象相关联的待展示文本。
103.在实际实施时,终端在播放界面中呈现弹幕功能项,终端接收到针对该弹幕功能项的触发操作时,获取当前所呈现的视频画面,并对视频画面中的对象进行检测,当确定视频画面中仅包含一个对象时,将视频画面中的对象作为目标对象;当确定视频画面中包含多个对象时,在目标视频的画面中呈现对象选取框,这里的对象选取框与对象可以是一一对应的,通过触发目标对象对应的对象选取框,来接收到针对目标对象的选取操作。在确定目标对象之后,呈现目标对象的弹幕输入框,用户可以通过弹幕输入框来输入弹幕信息。
104.作为示例,当视频画面包含一个对象时,图6是本技术实施例提供的弹幕信息的输入过程示意图,参见图6,在目标视频播放的过程中,在播放界面呈现弹幕功能项601;当用户点击该弹幕功能项601,终端确定当前呈现的视频画面中的对象作为目标对象,并呈现针对目标对象的弹幕输入框602,也即在目标对象的人脸区域下方呈现弹幕输入框;用户可以在该弹幕输入框中输入弹幕信息;终端在接收到输入的弹幕信息后,也即用户输入弹幕信息,并点击添加功能项603后,终端将弹幕信息作为与目标对象相关联的待展示文本。
105.其中,点击指的是在屏幕中显示的画面的某一位置,敲击鼠标键的动作,或者在屏
幕中显示的画面的某一位置,用手指触摸屏幕的动作。例如,用户点击弹幕功能项指的是用户通过手指触摸屏幕中对应弹幕功能项的位置。
106.作为示例,当视频画面包含多个对象时,图7是本技术实施例提供的弹幕信息的输入过程示意图,参见图7,在目标视频播放的过程中,在播放界面呈现弹幕功能项701;当用户点击该弹幕功能项701时,在每个对象的人脸位置呈现一个对象选择框702,用户可以基于呈现的对象选择框来选择目标对象,如点击目标对象的对象选择框;终端在接收到针对目标对象的选取操作后,呈现针对目标对象的弹幕输入框703,也即在目标对象的人脸区域下方呈现弹幕输入框;用户可以在该弹幕输入框中输入弹幕信息;终端在接收到输入的弹幕信息后,也即用户输入弹幕信息,并点击添加功能项704后,终端将弹幕信息作为与目标对象相关联的待展示文本。
107.在一些实施例中,终端在与目标对象的人脸相关联的展示区域,展示待展示文本之前,还可以响应于针对播放界面中弹幕功能项的触发操作,在目标视频的视频画面中呈现弹幕输入框;接收到基于弹幕输入框输入的弹幕信息,并将弹幕信息作为待展示文本;当目标视频的视频画面中包含至少两个对象时,将待展示文本分别与各对象进行匹配,确定与待展示文本相匹配对象作为目标对象;将弹幕信息与目标对象进行关联。
108.在实际实施时,可以提取待展示文本中的关键信息,将待展示文本中的关键信息与各对象进行匹配;也可以将整个待展示文本与各对象进行匹配。
109.作为示例,终端可以提取待展示文本中的关键词,如角色名、演员名;然后给将提取到的关键词与各对象的基本信息进行匹配,这里,对象的基本信息包括:姓名、所饰演的角色、对象的经典台词等;将与待展示文本相匹配的对象作为目标对象。
110.在一些实施例中,当待展示文本为字幕内容时,终端在与目标对象的人脸相关联的展示区域,展示待展示文本之前,还可以获取目标视频对应的字幕信息、以及字幕信息归属的视频画面中的对象;当字幕信息中包含归属于目标对象的字幕内容时,将字幕内容作为与目标对象相关联的待展示文本。
111.这里,字幕信息可以是目标视频的片名、演职员表、唱词、对话内容、说明词等;字幕信息可以是在目标视频上传时,由目标视频的上传者在上传目标视频的;当字幕信息为唱词或对话内容时,字幕信息还可以是通过对目标视频的音频数据进行识别得到的。其中,归属于目标对象的字幕内容可以是目标对象的对话内容、唱词,也可以是用于描述目标对象的说明词。
112.在一些实施例中,终端可以基于用户选取的目标颜色,来展示待展示文本。终端在与目标对象的人脸相关联的展示区域,展示待展示文本之前,还可以响应于针对播放界面中待展示文本的编辑操作,呈现至少两种待选择的颜色;响应于至少两种待选择的颜色中目标颜色的选取操作,确定用于展示待展示文本的目标颜色;相应的,可以通过以下方式展示待展示文本:采用目标颜色,展示待展示文本。
113.这里,当待展示文本的数量为至少两个时,用户选取的目标颜色可以是针对所有待展示文本的,也可以是针对部分待展示文本的,如触发针对某一待展示文本的编辑操作,对某一待展示文本的展示颜色进行选取。
114.在实际实施时,至少两种待选择的颜色可以以下拉列表形式呈现,也可以以图标形式呈现,还可以以图像形式呈现,这里不对至少两种待选择的颜色的呈现形式做限定。这
里,可以直接在播放界面中呈现两种待选择的颜色,也可以是呈现一个独立于播放界面之上的浮层,在浮层中呈现至少两种待选择的颜色。
115.例如,图8是本技术实施例提供的播放界面示意图,参见图8,在播放界面中展示针对待展示文本的编辑功能项801,当用户点击该编辑功能项801时,终端呈现多个待选择的颜色802,这里以图标形式呈现待选择颜色;用户点击目标颜色,以触发针对目标颜色的选取操作,将该目标颜色确定为用户展示待展示文本的目标颜色。
116.在一些实施例中,当待展示文本为弹幕信息时,弹幕信息的发表者在对弹幕信息进行编辑时,对弹幕信息的颜色进行选取,在展示待展示文本时,采用发表者所选取的目标颜色,展示待展示文本。
117.在一些实施例中,终端可以通过以下方式在与目标对象的人脸相关联的展示区域,展示待展示文本:采用与目标视频的视频画面相匹配的展示颜色,展示待展示文本。
118.在实际实施时,终端可以获取视频画面中的颜色,如背景颜色、目标对象的衣着颜色等,然后确定与获取视频画面中的颜色相匹配的颜色。当获取的颜色为背景颜色时,可以确定与背景颜色相匹配的颜色,以突出显示待展示文本,如背景颜色为黑色,将白色作为与目标视频的视频画面相匹配的展示颜色;当获取的颜色为目标对象的衣着颜色,可以将与衣着颜色同色系的颜色作为展示颜色,以使待展示文本能够与目标对象融为一体。
119.在一些实施例中,终端还可以接收到针对待展示文本的第一位置调整指令,标识与目标对象的人脸相关联的展示区域;响应于针对待展示文本的拖动操作,控制待展示文本在与目标对象相关联的展示区域中移动,以调整待展示文本在展示区域中的展示位置。
120.在实际实施时,可以在展示待展示文本时,对待展示文本的展示位置进行调整,这里可以对任一待展示文本的展示位置进行调整;当待展示文本为弹幕信息时,还可以在用户发表该弹幕信息时,对待展示文本的展示位置进行调整。
121.在实际应用中,当用户触发针对待展示文本的第一位置调整指令,标识与目标对象的人脸相关联的展示区域,如通过一个虚线框标识与目标对象相关联的展示区域;这里,待展示文本可以处于该展示区域内的任一位置,但不能移出该展示区域。
122.作为示例,图9是本技术实施例提供的播放界面示意图,参见图9,在目标视频的视频画面中与目标对象的人脸相关联的展示区域中901a所示的位置,展示待展示文本;当用户长按待展示文本,触发针对该待展示文本的第一位置调整操作,通过虚线框902标识展示区域;响应于针对待展示文本901拖动操作,控制待展示文本在虚线框902中移动,以移动至展示区域中901b所示的位置。
123.在一些实施例中,终端还可以当存在至少两个与目标对象的人脸相关联的展示区域时,接收到针对待展示文本的第二位置调整指令,标识至少两个展示区域;响应于基于至少两个展示区域触发的选取操作,将选取操作对应的展示区域作为对应待展示文本的展示区域。
124.在实际实施时,用户触发针对待展示文本的第一位置调整指令,标识与目标对象的人脸相关联的至少两个展示区域,如通过一个虚线框标识与目标对象相关联的展示区域;这里,待展示文本可以处于任一展示区域内。
125.作为示例,图10是本技术实施例提供的播放界面示意图,参见图10,在目标视频的视频画面中与目标对象的人脸相关联的展示区域,展示待展示文本1001;当用户长按待展
示文本,触发针对该待展示文本的第二位置调整操作,通过虚线框1002a、1002b、1002c标识三个展示区域;响应于针对某一展示区域的选取操作,如点击虚线框1002b,将虚线框1002b所标识的展示区域作为待展示文本1001的展示区域,并将待展示文本1001移动至虚线框1002b内。
126.在一些实施例中,终端可以通过以下方式在与目标对象的人脸相关联的展示区域,展示待展示文本:当存在至少两个与目标对象的人脸相关联的展示区域时,基于待展示文本的文本内容,确定至少两个展示区域中,与文本内容相匹配的展示区域;在与文本内容相匹配的展示区域,展示待展示文本。
127.在实际实施时,当存在多个与目标对象的人脸相关联的展示区域时,可以基于待展示文本的文本内容,来选择展示区域。这里,可以从文本内容从提取关键词,如与五官相关联的关键词,以基于该关键词匹配展示区域。
128.例如,假设与目标对象的人脸相关联的展示区域包括头顶区域、人脸左侧区域和人脸右侧区域,当待展示文本的文本内容包含与发型相关联时,在头顶区域展示该待展示文本。
129.在一些实施例中,终端可以通过以下方式在与目标对象的人脸相关联的展示区域,展示待展示文本:当存在多条与目标对象相关联的待展示文本时,在目标对象的人脸所关联的展示区域,依次播放多条待展示文本。
130.在实际实施时,当多条与目标对象相关联的待展示文本时,可以确定每条待展示文本的展示时长,当某一待展示文本的展示时长到达时,展示下一条待展示文本,以实现依次播放多条待展示文本。
131.这里,每个待展示文本的展示时长可以是人为设置的,如当待展示文本为弹幕信息时,可以将每条待展示文本的展示时长设置为5秒;也可以是根据目标视频确定的,如当待展示文本为字幕内容时,可以将该字幕内容所对应的语音播放时长,作为该字幕内容的播放时长。其中,各待展示文本的展示时长可以相同也可以不同。
132.作为示例,图11是本技术实施例提供的播放界面示意图,参见图11,在与目标对象的人脸相关联的展示区域,展示待展示文本1101;当展示时长达到5秒时,展示待展示文本1102。
133.在一些实施例中,在与目标对象的人脸相关联的展示区域,展示待展示文本,包括:当存在多条与目标对象相关联的待展示文本时,分别确定各待展示文本所对应的展示区域;其中,待展示文本与展示区域一一对应;分别通过各展示区域,展示相应的待展示文本。
134.这里,各待展示文本所对应的展示区域可以是预先设置的,也可以是随机分配的。在实际实施时,待展示文本与展示区域是一一对应的,也即,待展示文本的数量与展示区域的数量是相同的,如此,可以同时展示多条待展示文本。
135.作为示例,图12是本技术实施例提供的播放界面示意图,参见图12,有三条与目标对象相关联的待展示文本1201,通过与目标对象的人脸相关联的三个展示区域,展示相应的待展示文本。
136.在一些实施例中,获取目标对象的人脸区域尺寸;基于人脸区域尺寸,确定与目标对象的人脸相关联的展示区域,以使展示区域的尺寸与人脸区域尺寸相匹配。
137.在实际实施时,可以根据目标对象的人脸区域尺寸,来确定与目标对象的人脸相关联的展示区域的尺寸,如此,可以根据目标对象的人脸区域尺寸,动态调节展示区域的尺寸。
138.例如,人脸区域尺寸与展示区域的尺寸可以呈正比,也即人脸区域尺寸越大,展示区域的尺寸越大。图13a

13b是本技术实施例提供的播放界面示意图,参见图13a

13b,图13a中人脸区域尺寸1301a大于图13b中人脸区域尺寸1301b,相应的,图13a中的展示区域1302a大于图13b中的展示区域1302b。
139.在实际应用中,在根据人脸区域尺寸,确定与目标对象的人脸相关联的展示区域的尺寸的同时,还可以展示区域的尺寸动态调节待展示文本的文字尺寸。例如,可以根据展示区域的尺寸,确定文字尺寸,以使待展示文本正好填充展示区域。
140.在一些实施例中,待展示文本为弹幕信息,终端可以通过以下方式展示待展示文本:当弹幕信息的数量为至少两条、且至少两条弹幕信息对应至少两个用户时,确定各弹幕信息对应用户的用户级别;基于用户级别,展示弹幕信息。
141.在实际实施时,可以根据弹幕信息对应的用户的用户级别从高到低,对弹幕信息进行排序,得到弹幕信息序列,然后根据得到弹幕信息序列,展示弹幕信息。
142.作为示例,根据弹幕信息序列,按照用户级别从高到低,选取目标数量的弹幕信息进行展示,这里,目标数量可以为一个或者至少两条;或者,根据弹幕信息序列,按照用户级别从高到低,展示用户级别达到目标用户级别的弹幕信息。
143.步骤403:在展示待展示文本的过程中,当目标对象的人脸姿态发生变化时,伴随人脸姿态的变化,调整待展示文本的展示姿态。
144.这里,人脸姿态指的是人脸朝向的角度信息,展示姿态指的是待展示文本的朝向的角度信息。在一些实施例中,角度信息可以采用欧拉角表示,包括俯仰角、偏航角、翻滚角,其中,俯仰角,表示物体绕x轴旋转;偏航角,表示物体绕y轴旋转;翻滚角,表示物体绕z轴旋转。
145.在一些实施例中,当目标对象的人脸姿态发生变化时,可以是伴随人脸姿态的变化,同步调整待展示文本的展示姿态;相应的,可以通过以下方式调整待展示文本的展示姿态,包括:当目标对象的人脸旋转时,确定目标对象人脸姿态发生变化;伴随人脸姿态的变化,根据目标对象的人脸的旋转方向和旋转角度,控制展示文本跟随目标对象的人脸同步进行旋转,以调整待展示文本的展示姿态。
146.在实际实施时,由于人脸姿态指的是人脸朝向的角度信息,展示文本的旋转方向和旋转角度、与目标对象的人脸的旋转方向和旋转角度可以是一致的,如,目标对象的人脸向左旋转30度,那么,控制所述展示文本向左旋转30度。
147.这里,旋转方向和旋转角度指的是相对于相机的旋转方向和旋转角度。
148.图14a

14b是本技术实施例提供的播放界面示意图,参见图14a

14b,待展示文本1401的展示姿态与目标对象1402的人脸姿态一致,都是向左旋转;以及待展示文本1403的展示姿态与目标对象1404的人脸姿态一致,都是向左旋转;并且,由于目标对象1404的人脸相对于目标对象1402的人脸向左旋转的角度更大,相应的,待展示文本1403相对于待展示文本1401向左旋转的角度更大。
149.在一些实施例中,可以通过以下方式实现伴随人脸姿态的变化,调整待展示文本
的展示姿态:首先,终端根据待展示文本,绘制文本图片;然后,获取展示待展示文本的每个视频帧中目标对象的人脸姿态,根据目标对象的人脸姿态,对文本图片进行仿射变换,得到变换后的文本图片,以使变换后的文本图片对应的待展示文本的展示姿态与人脸姿态相一致;将变换后的文本图片叠加到相应的视频帧中与目标对象的人脸相关联的展示区域,以在与目标对象的人脸相关联展示区域,展示待展示文本。在一些实施例中,终端在绘制文本图片时,可选自动换行,即字符长度达到给定阈值后,自动添加换行符号,文字带有透明通道,非文字区域为透明色。
150.在一些实施例中,通过以下方式确定目标视频中目标对象的展示姿态:通过人脸检测算法,检测目标视频中各视频帧中的人脸;对各视频帧中的人脸进行重识别,得到目标对象的人脸轨迹;基于人脸轨迹,对目标对象的人脸特征点进行检测;基于人脸特征点,进行人脸姿态估计。
151.这里,确定目标视频中目标对象的展示姿态的过程可以是由终端执行的,也可以是由服务器执行的。当通过服务器执行确定目标视频中目标对象的展示姿态的过程时,可以降低终端的计算复杂度,保证了耗电量低,适用于各种终端机型。
152.在实际应用中,首先,可以对于每个视频帧,通过人脸检测算法,如多任务卷积神经网络(mtcnn,multi

task convolutional neural network),对视频帧进行人脸检测,检测出视频帧中的所有人脸。然后,基于检测出的人脸,截取各视频帧对应的人脸区域图像,对各人脸区域图像进行重识别,得到各人脸区域图像所对应的对象,进而根据目标对象对应的人脸区域图像在相应视频帧中的位置,确定目标对象的人脸轨迹。接着,根据目标对象的人脸轨迹,对目标对象所对应人脸区域图像进行特征点检测,得到人脸特征点在人脸区域图像中的位置,然后将人脸特征点在人脸区域图像中的坐标变换到相应的视频帧上,得到视频帧图像中人脸特征点的坐标,以采用视频帧图像中人脸特征点的坐标来表征人脸特征点。最后,基于人脸特征点进行人脸姿态估计,并根据目标对象的人脸轨迹,对目标对象的人脸姿态进行滤波处理,得到无抖动的人脸姿态。这里,目标对象的人脸轨迹可以由多段,分别对各人脸轨迹对应的人脸姿态进行滤波。
153.在一些实施例中,对于每个包含目标对象的视频帧,可以通过以下方式基于人脸特征点进行人脸姿态估计:获取相机内参数;选取多个用于进行人脸姿态估计的人脸特征点;在拍摄的物理三维环境中,建立人头坐标系,并设置默认的选取的人脸特征点在人头坐标系的坐标;基于选取的人脸特征点在人头坐标系中的坐标、人脸特征点在视频帧中的坐标及相机内参数,估算人脸姿态。这里的人脸姿态由目标对象的人脸在相机坐标系中的坐标(相对于相机的平移向量)及3个旋转角(俯仰角、偏航角、翻滚角)表示。
154.在实际实施时,相机内参数为镜头焦距,若镜头焦距未知,可以使用人工给出预设值(与图像的高度相同),或者通过算法对视频帧进行自动检测,以得到相机内参数;这里不对相机内参数的获取方式进行限定。
155.作为示例,以选取的人脸特征点数量为6个,分别为左眼左边眼角、右眼右边眼角、左嘴角、右嘴角、鼻尖、下巴为例,对人脸姿态估计过程进行说明,在拍摄的物理三维环境中,建立人头坐标系,默认设置6个人脸特征点在人脸坐标系中的坐标,如鼻尖(0.0,0.0,0.0)、下巴(0.0,

330.0,

65.0)、左眼左眼角(

225.0,170.0,

135.0)、右眼右眼角(225.0,170.0,

135.0)、左嘴角(

150.0,

150.0,

125.0)、右嘴角(150.0,

150.0,

125.0);接着将
6个人脸特征点在人脸坐标系中的坐标(三维特征点坐标)、人脸特征点在视频帧中的坐标(二维特征点坐标)及镜头焦距带入角度

n

点(pnp,pespective

n

point)算法中,即可计算得到人脸姿态。
156.在一些实施例中,对于目标对象的每段人脸轨迹可以执行以下处理:若某m个视频帧中没有检测到目标对象的人脸,但m个视频帧前后的两个视频帧中检测到了目标对象的人脸,且前后的两个视频帧中,目标对象对应的人脸区域图像的位置之间的距离小于预设阈值,则说明前后的两个视频帧中,目标对象对应的人脸区域图像的位置之间的距离足够接近,需要采用插值的方式,补充中间帧的人脸数据(包括人脸区域图像的位置和人脸姿态)。其中,m为自然数,如m可以取2。
157.若某m个视频帧中没有检测到目标对象的人脸,但m个视频帧前后的两个视频帧中检测到了目标对象的人脸,且前后的两个视频帧中,目标对象对应的人脸区域图像的位置之间的距离达到预设阈值,则说明前后的两个视频帧中,目标对象对应的人脸区域图像的位置之间的距离不够接近,那么,认为视频画面发生的切换,将人脸轨迹按照切换的时刻,分为2段。
158.若某一视频帧检测出某一目标对象,但相对于该视频帧的前后两个视频帧中目标对象的人脸区域图像的位置发生跳变(相邻两个视频帧中,目标对象的人脸区域图像的位置间的距离超过距离阈值,如图像高度的5%),则认为该视频帧人脸检测失败,通过前后视频帧中的人脸数据,采用插值的方式,得到该视频帧中正确的人脸数据。
159.若连续n个视频帧中均无目标对象的人脸,则认为视频画面发生的切换,将人脸轨迹按照切换的时刻,分为2段,这里的n为正整数,且n大于m,如m为2,n为3。
160.在一些实施例中,可以通过以下方式分别对各人脸轨迹对应的人脸姿态进行滤波处理:对于每段人脸轨迹,获取该人脸轨迹对应的人脸姿态序列;这里,人脸姿态序列中的人脸姿态包括6个维度的数据,分别对该人脸姿态序列中的各维度的数据进行滤波处理,以滤除抖动。
161.在实际应用中,可以采用扩展卡尔曼滤波对各维度的数据进行滤波,使用人脸轨迹开始时间点的值作为扩展卡尔曼滤波的初始值,保证每段轨迹开始时刻,滤波的结果正常可用。
162.在得到无抖动的人脸姿态后,按照视频帧的顺序,把每个视频帧检测出的人脸位置、人脸姿态、人脸id(标识对象)、视频帧序号、视频id、镜头焦距等的信息,存储到人脸姿态数据库中,供后续使用。
163.在一些实施例中,可以通过以下方式根据目标对象的人脸姿态,对文本图片进行仿射变换:确定文本图片的至少两个顶点在人头坐标系下的坐标;基于目标对象的人脸姿态,将文本图片的至少两个顶点在人头坐标系下的坐标,投影到相机成像面上,得到文本图片的至少两个顶点在视频帧中的坐标;基于文本图片的至少两个顶点在人头坐标系下的坐标、及文本图片的至少两个顶点在视频帧中的坐标,计算将文本图片变换到相机成像面上的变换矩阵;使用透视变换矩阵,对文本图片进行仿射变换,得到变换后的文本图片;将变换后的文本图片叠加到视频帧中,得到添加有待展示文本的视频帧。
164.在一些实施例中,可以通过以下方式确定文本图片在人头坐标系下的坐标:获取文本图片的长度和宽度,并确定文本图片的展示区域与目标对象的人脸之间的位置关系;
基于文本图片的长度和宽度、以及文本图片的展示区域与目标对象的人脸之间的位置关系,确定文本图片在人头坐标系下的坐标。
165.作为示例,以在目标对象的头顶展示文本图片为例,当文本图片为矩形,其长度为w,宽度为h,文本图片距离目标对象的鼻子的高度为d时,确定文本图片的4个顶点在人头坐标系下的坐标为左上角(

w/2,

d

h,0)、左下角(

w/2,

d,0)、右下角(w/2,

d,0)、右上角(w/2,

d

h,0)。
166.在一些实施例中,可以通过以下方式将文本图片的至少两个顶点在人头坐标系下的坐标,投影到相机成像面上:基于目标对象的人脸姿态,计算文本图片的至少两个顶点在相机坐标系下的三维坐标;采用点云投射的方法,将文本图片的至少两个顶点在相机坐标系下的三维坐标,投影到相机成像平面上,得到文本图片的至少两个顶点在视频帧中的坐标;获取文本图片的至少两个顶点的原始二维坐标;基于文本图片的至少两个顶点的原始二维坐标、与文本图片的至少两个顶点在视频帧中的坐标之间的映射关系,确定将文本图片变换到相机成像面上的变换矩阵;根据变换矩阵,对文本图片进行仿射变换,得到变换后的文本图片。
167.这里,文本图片的展示参数应该与人脸姿态相一致,基于此,可以根据目标对象的人脸姿态、以及文本图片的至少两个顶点在人头坐标系中的坐标,采用立体几何的计算方式,确定文本图片的至少两个顶点在相机坐标系下的三维坐标;并在得到文本图片的至少两个顶点在相机坐标系下的三维坐标后,投影到相机成像平面上,得到文本图片的至少两个顶点在视频帧中的坐标。
168.在实际实施时,文本图片的至少两个顶点的原始二维坐标,可以根据文本图片的形状、尺寸及展示位置确定,例如,当文本图片为矩形,其长度为w,宽度为h,文本图片距离目标对象的鼻子的高度为d时,文本图片的4个顶点左上角(0,0),左下角(0,h

1),右下角(w

1,h

1),右上角(w

1,0)。
169.作为示例,将文本图片的4个顶点在视频帧中的坐标记为点组合a,将文本图片的4个顶点的原始二维坐标记为点组合b,计算点组合b变换到点组合a的变换矩阵m,然后通过变化矩阵m,对文本图片进行仿射变换,得到变换后的文本图片。
170.在一些实施例中,终端可以通过以下方式展示待展示文本:生成对应待展示文本的特效动画;播放特效动画,以展示待展示文本。
171.在实际实施时,终端可以根据待展示文本生成特效动画,如颜色变化的特效动画、尺寸变化的特效动画等。在目标对象的人脸姿态发生变化时,伴随人脸姿态的变化,调整特效动画的展示姿态。
172.作为示例,图15是本技术实施例提供的播放界面示意图,参见图15,在待展示文本的展示姿态随人脸姿态变化的过程中,其尺寸也在动态变化。
173.在一些实施例中,终端还可以通过以下方式展示待展示文本:对待展示文本进行三维处理,生成三维立体形式的待展示文本;展示三维立体形式的待展示文本。
174.在实际实施时,待展示文本可以是是三维立体形式的,在对待展示文本进行三维处理,生成三维立体形式的待展示文本;根据人脸姿态,对三维立体形式的待展示文本进行仿射变换,得到变换后的三维立体形式的待展示文本,以使变换后的文本图片对应的待展示文本的展示姿态与人脸姿态相一致。
175.作为示例,图16是本技术实施例提供的播放界面示意图,参见图16,在待展示文本1601为三维立体形式,三维立体形式的待展示文本的展示姿态与人脸姿态相一致。
176.应用上述实施例,通过在播放界面中播放目标视频;在播放目标视频的过程中,当目标视频的视频画面中包含目标对象、且存在与目标对象相关联的待展示文本时,在与目标对象的人脸相关联的展示区域,展示待展示文本;在展示待展示文本的过程中,当目标对象的人脸姿态发生变化时,伴随人脸姿态的变化,调整待展示文本的展示姿态;如此,待展示文本的展示姿态能够随着其关联的目标对象的人脸姿态的变化而变化,实现了待展示文本与目标对象的人脸的关联展示,以使用户能够清楚获知待展示文本所关联的目标对象,提升了待展示文本展示的有效性及灵活性。
177.下面,将说明本技术实施例在一个实际的应用场景中的示例性应用。在实际实施时,终端接收到针对目标视频的播放请求后,向服务器请求目标视频、待展示文本及目标视频的人脸姿态数据,服务器将目标视频、待展示文本及目标视频的人脸姿态数据下发至终端,终端进行实时渲染,以播放目标视频,并在播放目标视频的过程中,在视频画面中与目标对象的人脸相关联的展示区域(如人脸区域的顶部),展示与该目标对象关联的待展示文本,待展示文本的展示姿态随对象的人脸姿态的变化,而同步变化。其中,待展示文本可以是三维立体形式的,也可以是传统形式的(不具有几何透视特点的)。
178.以待展示文本为弹幕信息为例,参见图14a,在目标对象1402的头顶区域展示与该目标对象相关联的弹幕信息(待展示文本)1402,其中,目标对象的人脸姿态与弹幕的展示姿态相匹配,在视频的播放过程中,随着目标对象的人脸姿态的变化,弹幕的展示姿态随之变化。
179.其中,目标对象与弹幕之间的关联关系,可以是通过将弹幕与视频画面中的对象进行匹配确定的,也可以是用户在发表弹幕时,由用户关联的。
180.作为示例,当视频画面包含一个对象时,参见图6,在目标视频播放的过程中,在播放界面呈现弹幕功能项601;当用户点击该弹幕功能项601,终端确定当前呈现的视频画面中的对象作为目标对象,并呈现针对目标对象的弹幕输入框602,也即在目标对象的人脸区域下方呈现弹幕输入框;用户可以在该弹幕输入框中输入弹幕信息;终端在接收到输入的弹幕信息后,将弹幕信息作为与所述目标对象相关联的待展示文本。
181.作为示例,当视频画面包含多个对象时,参见图7,在目标视频播放的过程中,在播放界面呈现弹幕功能项701;当用户点击该弹幕功能项701时,在每个对象的人脸位置呈现一个对象选择框702,用户可以基于呈现的对象选择框来选择目标对象,如点击目标对象的对象选择框;终端在接收到针对目标对象的选取操作后,呈现针对目标对象的弹幕输入框703,也即在目标对象的人脸区域下方呈现弹幕输入框;用户可以在该弹幕输入框中输入弹幕信息;终端在接收到输入的弹幕信息后,将弹幕信息作为与所述目标对象相关联的待展示文本。
182.以待展示文本为字幕为例,参见图14b,在目标对象1404的头顶区域展示与该目标对象当前对话内容对应的字幕1403,其中,目标对象的人脸姿态与字幕的展示姿态相匹配,在视频的播放过程中,随着目标对象的人脸姿态的变化,弹幕的展示姿态随之变化。
183.下面对上述方案的实现过程进行具体说明,图17是本技术实施例提供的视频的播放流程示意图,参见图17,本技术实施例提供的视频的播放流程包括:
184.步骤1701:服务器接收到用户上传的目标视频。
185.步骤1702:服务器通过人脸检测算法,检测目标视频中各视频帧中的人脸。
186.步骤1703:服务器对各视频帧中的人脸进行重识别。
187.这里,可以采用明星识别算法,对人脸进行重识别,得到人脸轨迹。可以理解的是,这里的人脸轨迹是与对象相对应的,也即当目标视频包含多个对象时,可以获取各个对象的人脸轨迹。
188.步骤1704:服务器对人脸特征点进行检测。
189.这里,基于人脸轨迹,对人脸进行特征点检测,这里可以使用68点的特征点检测算法,来对人脸进行特征点检测,如采用人脸注意力机制网络(fan,face attention network)对人脸进行特征点检测。
190.步骤1705:服务器基于人脸特征点,进行人脸姿态估计。
191.在实际实施时,可以采用相机姿态估计算法,进行人脸姿态估计,如可以采用pnp进行人脸姿态估计,得到人脸姿态;然后进行平滑处理,得到最终的人脸姿态,也即无抖动的人脸姿态。
192.这里,将每个视频帧中的人脸区域图像的位置(人脸位置)、人脸轨迹、人脸姿态存储至人脸姿态数据库中,与视频一一对应。
193.步骤1706:服务器将目标视频、目标视频的人脸姿态数据及待展示文本下发至终端。
194.这里,当用户触发对应目标视频的播放请求时,终端发送目标视频、目标视频的人脸姿态数据及待展示文本的获取请求至服务器,服务器从数据库查找目标视频、目标视频的人脸姿态数据及待展示文本,并下发至终端。
195.需要说明的是,人脸姿态数据包括每个视频帧的人脸位置、人脸轨迹、人脸姿态。
196.步骤1707:终端进行实时渲染。
197.在实际实施时,终端根据获取的人脸姿态数据,实时将待展示文本渲染在视频画面中与相应对象的人脸相关联的展示区域。
198.下面分别对人脸姿态估计方法和终端侧的实时渲染方法进行说明。
199.在实际实施时,人脸姿态估计方法可以是由终端执行的,也可以是由服务器执行的。
200.这里,以由服务器执行人脸姿态估计方法为例进行说明,图18是本技术实施例提供的人脸姿态估计方法的流程示意图,参见图18,本技术实施例提供的人脸姿态估计方法包括:
201.步骤1801:服务器分别对目标视频的各视频帧进行人脸检测。
202.对于每个视频帧,对视频帧进行人脸检测,检测出视频帧中的所有人脸,这里可以采用多任务卷积神经网络(mtcnn,multi

task convolutional neural network)。
203.步骤1802:基于检测出的人脸,截取各视频帧对应的人脸区域图像。
204.步骤1803:对各人脸区域图像进行特征点检测,并将人脸特征点在人脸区域图像中的坐标,变换到相应的原图像(视频帧)上。
205.这里,对各人脸区域图像进行特征点检测,确定各人脸特征点在人脸区域图像中的坐标;然后基于人脸区域图像在视频帧中的位置,对人脸特征点的坐标进行转换,以确定
各人脸特征点在视频帧中的坐标。
206.步骤1804:基于人脸特征点进行人脸姿态估计。
207.在实际实施时,首先获取相机内参数,即镜头焦距,若镜头焦距未知,使用人工给出预设值(与图像的高度相同),或者通过算法对视频帧进行自动检测,以得到相机内参数;然后选取多个人脸特征点来计算相机的外参数(即人脸姿态),可选取6个人脸特征点,如左眼左边眼角、右眼右边眼角、左嘴角、右嘴角、鼻尖、下巴;接着在拍摄的物理三维环境中,建立人头坐标系,设置默认的6个人脸特征点在人头坐标系的坐标;6个人脸特征点在人脸坐标系中的坐标(三维特征点坐标)、人脸特征点在视频帧中的坐标(二维特征点坐标)及镜头焦距带入pnp算法中,即可计算得到人脸姿态。
208.其中,默认的上述特征点在人头坐标系的坐标可以设置为:鼻尖(0.0,0.0,0.0)、下巴(0.0,

330.0,

65.0)、左眼左眼角(

225.0,170.0,

135.0)、右眼右眼角(225.0,170.0,

135.0)、左嘴角(

150.0,

150.0,

125.0)、右嘴角(150.0,

150.0,

125.0)。
209.步骤1805:对检测的人脸,进行人脸重识别。
210.这里,通过对各视频帧中的人脸进行人脸重识别,确定各人脸所属对象,根据同一对象在连续视频帧中的位置,来得到人脸轨迹。
211.在实际实施时,若某m个视频帧中没有检测到某一对象的人脸,但m个视频帧前后的两个视频帧中检测到了该对象的人脸,且前后的两个视频帧中,该对象的人脸位置(人脸框的位置)足够接近,则采用插值的方式,补充中间帧的人脸数据(人脸位置、人脸姿态等)。其中,m为自然数,如m可以取2。
212.若某一视频帧检测出某一对象的人脸,但相对于该视频帧的前后两个视频帧的人脸位置发生跳变(相邻两个视频帧中人脸位置间的距离超过距离阈值,如图像高度的5%),则认为该视频帧人脸检测失败,通过前后帧人脸的数据,采用插值的方式,得到该视频帧中正确的人脸数据。
213.若连续n个视频帧中均无某一人脸,则认为视频画面发生的切换,将人脸轨迹按照切换的时刻,分为2段,这里的n为自然数,且n大于m,如m为2,n为3。
214.步骤1806:基于人脸轨迹,对人脸姿态进行滤波处理,得到无抖动的人脸姿态。
215.对于每段人脸轨迹,获取该人脸轨迹对应的人脸姿态序列;这里,人脸姿态序列中的人脸姿态包括6个维度的数据,分别对该人脸姿态序列中的各维度的数据进行滤波处理,以滤除抖动。其中,可以采用扩展卡尔曼滤波对各维度的数据进行滤波,使用人脸轨迹开始时间点的值作为扩展卡尔曼滤波的初始值,保证每段轨迹开始时刻,滤波的结果正常可用。
216.在得到无抖动的人脸姿态后,按照视频帧的顺序,把每个视频帧检测出的人脸位置、人脸姿态、人脸id(标识对象)、视频帧序号、视频id、镜头焦距等的信息,存储到人脸姿态数据库中,供后续下发终端使用。
217.图19是本技术实施例提供的实时渲染过程示意图,参见图19,终端对待展示文本进行实时渲染的过程包括:
218.步骤1901:绘制文本图片。
219.按照待展示文本的文本内容,绘制文本图片;其中,绘制时可选自动换行,即字符长度达到给定阈值后,自动添加换行符号,文字带有透明通道,非文字区域为透明色。
220.步骤1902:确定文本图片在人头坐标系下的坐标。
221.这里,以绘制在目标对象的头顶为例,图20是本技术实施例提供的文本图片在人头坐标系下的示意图,参见图20,在人头坐标系中,文本图片到鼻子的高度d(y轴方向)固定,文本图片的高度h的固定,按照文本图片的宽高比r,计算文本图片在人头坐标系下的宽度w,其中w=hr。例如,d可以设置为125,h可以设置为40。
222.相应的,可以确定文本图片的四个顶点在人头坐标系下的坐标,即左上角(

w/2,

d

h,0)、左下角(

w/2,

d,0)、右下角(w/2,

d,0)、右上角(w/2,

d

h,0)。
223.步骤1903:基于人脸姿态,采用点云投射的方法,将文本图片在人头坐标系下的坐标,投影到相机成像面上。
224.在实际实施时,采用点云投射的方法,将文本图片的4个顶点在人头坐标系下的坐标,投影到相机成像面上,得到在视频帧中文本图片的4个顶点在视频帧中的坐标,这4个顶点在视频帧中的坐标组成点组合a。
225.在实际应用中,基于人脸姿态,计算文本图片在相机坐标系下的三维坐标;然后将文本图片在相机坐标下的三维坐标,投影到相机成像面上。
226.步骤1904:计算将文本图片变换到相机成像面上的变换矩阵。
227.在实际实施时,文本图片的4个顶点的原始二维坐标为左上角(0,0),左下角(0,h

1),右下角(w

1,h

1),右上角(w

1,0),将这4个顶点的原始二维坐标组成点组合b。这里,计算点组合b变换到点组合a的变换矩阵m。
228.步骤1905:使用变换矩阵,对文本图片进行仿射变换,得到变换后的文本图片。
229.步骤1906:将变换后的文本图片叠加到视频帧中,得到添加有待展示文本的视频帧。
230.应用上述实施例,在展示待展示文本时,能够实现待展示文本随目标对象的人脸姿态变化,使得用户能够明确知道该待展示文本所关联的目标对象;并且,终端可以简单快速的绘制具有几何透视关系的三维文本图片,在保证用户既可以有更好的交互体验的同时,避免了引入过多的计算量,保证了耗电量低,适用于各种终端机型。
231.下面继续说明本技术实施例提供的视频的播放装置。参见图21,图21是本技术实施例提供的视频的播放装置的结构示意图,本技术实施例提供的视频的播放装置包括:
232.播放模块410,用于在播放界面中播放目标视频;
233.展示模块420,用于在播放所述目标视频的过程中,当所述目标视频的视频画面中包含目标对象、且存在与所述目标对象相关联的待展示文本时,在与所述目标对象的人脸相关联的展示区域,展示所述待展示文本;
234.调整模块430,用于在展示所述待展示文本的过程中,当所述目标对象的人脸姿态发生变化时,伴随所述人脸姿态的变化,调整所述待展示文本的展示姿态。
235.在一些实施例中,所述展示模块,还用于响应于针对所述播放界面中弹幕功能项的触发操作,当所述目标视频的视频画面中包含至少两个对象时,在所述目标视频的视频画面中呈现对象选取框;
236.基于所述对象选取框,接收到针对目标对象的选取操作;
237.响应于所述选取操作,呈现对应所述目标对象的弹幕输入框;
238.接收到基于所述弹幕输入框输入的弹幕信息,将所述弹幕信息作为与所述目标对象相关联的待展示文本。
239.在一些实施例中,所述展示模块,还用于响应于针对所述播放界面中弹幕功能项的触发操作,在所述目标视频的视频画面中呈现弹幕输入框;
240.接收到基于所述弹幕输入框输入的弹幕信息,并将所述弹幕信息作为待展示文本;
241.当所述目标视频的视频画面中包含至少两个对象时,将所述待展示文本分别与各所述对象进行匹配,确定与所述待展示文本相匹配对象作为所述目标对象;
242.将所述弹幕信息与所述目标对象进行关联。
243.在一些实施例中,所述展示模块,还用于响应于针对所述播放界面中待展示文本的编辑操作,呈现至少两种待选择的颜色;
244.响应于至少两种待选择的颜色中目标颜色的选取操作,确定用于展示所述待展示文本的目标颜色;
245.采用所述目标颜色,展示所述待展示文本。
246.在一些实施例中,所述展示模块,还用于接收到针对所述待展示文本的第一位置调整指令,标识与所述目标对象的人脸相关联的展示区域;
247.响应于针对所述待展示文本的拖动操作,控制所述待展示文本在与所述目标对象相关联的展示区域中移动,以调整所述待展示文本在所述展示区域中的展示位置。
248.在一些实施例中,所述展示模块,还用于当存在至少两个与所述目标对象的人脸相关联的展示区域时,基于所述待展示文本的文本内容,确定至少两个所述展示区域中,与所述文本内容相匹配的展示区域;
249.在与所述文本内容相匹配的展示区域,展示所述待展示文本。
250.在一些实施例中,所述展示模块,还用于当存在多条与所述目标对象相关联的待展示文本时,在与所述目标对象的人脸相关联的展示区域,依次播放多条所述待展示文本。
251.在一些实施例中,所述展示模块,还用于当存在至少两个与所述目标对象的人脸相关联的展示区域时,接收到针对所述待展示文本的第二位置调整指令,标识至少两个所述展示区域;
252.响应于基于至少两个所述展示区域触发的选取操作,将所述选取操作对应的展示区域作为对应所述待展示文本的展示区域。
253.在一些实施例中,所述展示模块,还用于获取所述目标视频对应的字幕信息、以及所述字幕信息归属的视频画面中的对象;
254.当所述字幕信息中包含归属于所述目标对象的字幕内容时,将所述字幕内容作为与所述目标对象相关联的待展示文本。
255.在一些实施例中,所述展示模块,还用于获取所述目标对象的人脸区域尺寸;
256.基于所述人脸区域尺寸,确定与所述目标对象的人脸相关联的展示区域,以使所述展示区域的尺寸与所述人脸区域尺寸相匹配。
257.在一些实施例中,所述展示模块,还用于当弹幕信息的数量为至少两个、且至少两个弹幕信息对应至少两个用户时,确定各弹幕信息对应用户的用户级别;
258.基于所述用户级别,展示所述弹幕信息。
259.在一些实施例中,所述展示模块,还用于当存在多条与所述目标对象相关联的待展示文本时,分别确定各待展示文本所对应的展示区域;其中,所述待展示文本与所述展示
区域一一对应;
260.分别通过各所述展示区域,展示相应的待展示文本。
261.在一些实施例中,所述展示模块,还用于生成对应所述待展示文本的特效动画;
262.播放所述特效动画,以展示所述待展示文本。
263.在一些实施例中,所述展示模块,还用于对所述待展示文本进行三维处理,生成三维立体形式的待展示文本;
264.展示所述三维立体形式的待展示文本。
265.在一些实施例中,所述展示模块,还用于采用与所述目标视频的视频画面相匹配的展示颜色,展示所述待展示文本。
266.应用上述实施例,由于待展示文本的展示姿态能够随着其关联的目标对象的人脸姿态的变化而变化,实现了待展示文本与目标对象的人脸的关联展示,提升了待展示文本展示的有效性及灵活性。
267.本技术实施例还提供一种计算机设备,该计算机设备可以为终端或服务器,参见图22,图22为本技术实施例提供的计算机设备的结构示意图,本技术实施例提供的计算机设备包括:
268.存储器550,用于存储可执行指令;
269.处理器510,用于执行所述存储器中存储的可执行指令时,实现本技术实施例提供的信息展示方法。
270.这里,处理器510可以是一种集成电路芯片,具有信号的处理能力,例如通用处理器、数字信号处理器(dsp,digital signal processor),或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等,其中,通用处理器可以是微处理器或者任何常规的处理器等。
271.存储器550可以是可移除的,不可移除的或其组合。示例性的硬件设备包括固态存储器,硬盘驱动器,光盘驱动器等。存储器450可选地包括在物理位置上远离处理器510的一个或多个存储设备。
272.存储器550包括易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。非易失性存储器可以是只读存储器(rom,read only me mory),易失性存储器可以是随机存取存储器(ram,random access memor y)。本技术实施例描述的存储器550旨在包括任意适合类型的存储器。
273.在一些实施例中还可包括至少一个网络接口520和用户接口530。计算机设备500中的各个组件通过总线系统540耦合在一起。可理解,总线系统540用于实现这些组件之间的连接通信。总线系统540除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图22中将各种总线都标为总线系统540。
274.本技术实施例提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行本技术实施例上述的视频的播放方法。
275.本技术实施例提供一种存储有可执行指令的计算机可读存储介质,其中存储有可执行指令,当可执行指令被处理器执行时,将引起处理器执行本技术各实施例提供的方法。
276.在一些实施例中,计算机可读存储介质可以是fram、rom、prom、ep rom、eeprom、闪存、磁表面存储器、光盘、或cd

rom等存储器;也可以是包括上述存储器之一或任意组合的各种设备。
277.在一些实施例中,可执行指令可以采用程序、软件、软件模块、脚本或代码的形式,按任意形式的编程语言(包括编译或解释语言,或者声明性或过程性语言)来编写,并且其可按任意形式部署,包括被部署为独立的程序或者被部署为模块、组件、子例程或者适合在计算环境中使用的其它单元。
278.作为示例,可执行指令可以但不一定对应于文件系统中的文件,可以可被存储在保存其它程序或数据的文件的一部分,例如,存储在超文本标记语言(html,hyper text markup language)文档中的一个或多个脚本中,存储在专用于所讨论的程序的单个文件中,或者,存储在多个协同文件(例如,存储一个或多个模块、子程序或代码部分的文件)中。
279.作为示例,可执行指令可被部署为在一个计算设备上执行,或者在位于一个地点的多个计算设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个计算设备上执行。
280.以上所述,仅为本技术的实施例而已,并非用于限定本技术的保护范围。凡在本技术的精神和范围之内所作的任何修改、等同替换和改进等,均包含在本技术的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献