掌桥专利:专业的专利平台
掌桥专利
首页

列表更新方法、电子设备、存储介质及装置

文献发布时间:2023-06-19 11:22:42


列表更新方法、电子设备、存储介质及装置

技术领域

本申请涉及计算机技术领域,尤其涉及一种列表更新方法、电子设备、存储介质及装置。

背景技术

目前很多视频内容提供商提供“只看TA”功能,通过该功能,用户能够在观看视频过程中,只观看自己感兴趣的人物所在的视频片段。具体实现时,用户操作“只看TA”虚拟按钮,得到含有出演视频的人物的人物列表,当用户点击人物列表中的任一条人物信息时,向用户展示该人物信息对应的视频片段。

当前,人物列表中人物信息的先后次序,由视频内容提供商自行决定,因此人物列表一旦确定后,人物列表中人物信息的次序不会再发生改变。然而,对于观看视频的用户而言,由于不同的用户喜欢的人物不一样,因此千篇一律的人物排序,难以实现使不同的用户快速从人物列表中找到自己喜欢的人物,进而观看该人物所在的视频片段。

发明内容

本申请提供了一种列表更新方法、电子设备、存储介质及装置,用以实现有针对性地向用户展示视频的人物列表。

第一方面、提供一种列表更新方法,包括:

获取当前时刻的视频帧,所述当前时刻为监测到与视频相关的当前操作事件的时刻;

获取所述视频帧中的人脸头像图片;

获得所述人脸头像图片对应的人物的人物标识;

将所述视频的人物列表中与所述人物标识对应的展示次序,由当前次序更新为目标次序,以便在展示所述人物列表时,按照所述目标次序提前展示所述人物标识对应的人物信息。

可选地,获得所述人脸头像图片对应的人物的人物标识,包括:

向服务器发送所述人脸头像图片,并接收所述服务器返回的所述人物标识,所述人物标识为所述服务器识别所述人脸头像图片得到。

可选地,将所述视频的人物列表中与所述人物标识对应的展示次序,由当前次序更新为目标次序,包括:

获取当前次序下与所述人物标识对应的当前权重;

确定与所述当前权重和预设权重变量对应的目标权重;

利用所述目标权重,确定与所述人物标识对应的所述目标次序。

可选地,获取所述视频帧中的人脸头像图片,包括:

采用预先训练的人脸检测模型,推理得到人脸头像在所述视频帧中的目标区域;

从所述视频帧中截取所述目标区域对应的所述人脸头像图片。

可选地,采用预先训练的人脸检测模型,推理得到人脸头像在所述视频帧中的目标区域,包括:

创建与所述人脸检测模型对应的推理请求;

利用所述推理请求对所述视频帧进行推理,得到所述目标区域。

可选地,获取当前次序下与所述人物标识对应的当前权重,包括:

判断是否存在与所述人物标识和上一次操作事件对应的上一次目标权重;

若存在所述上一次目标权重,将所述上一次目标权重作为所述当前权重;

若不存在所述上一次目标权重,将所述人物列表中的每一人物信息对应的权重设为预设值,并将所述预设值作为所述当前权重。

可选地,将人物列表中与所述人物标识对应的展示次序,由当前次序更新为目标次序之后,还包括:

当存在针对所述人物列表的展示请求时,按照所述人物信息对应的所述目标次序,展示所述人物列表。

第二方面、提供一种电子设备,包括:处理器、通信接口、存储器和通信总线,其中,所述处理器、所述通信接口和所述存储器通过所述通信总线完成相互间的通信;所述存储器,用于存储计算机程序;所述处理器,用于执行所述存储器中所存储的程序,实现第一方面所述的列表更新方法。

第三方面、提供一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时实现第一方面所述的列表更新方法。

第四方面、提供一种列表更新装置,包括:

第一获取单元,用于获取当前时刻的视频帧,所述当前时刻为监测到与视频相关的当前操作事件的时刻;

第二获取单元,用于获取所述视频帧中的人脸头像图片;

获得单元,用于获得所述人脸头像对应的人物的人物标识;

更新单元,用于将所述视频的人物列表中与所述人物标识对应的展示次序,由当前次序更新为目标次序,以便在展示所述人物列表时,按照所述目标次序提前展示所述人物标识对应的人物信息。

本申请实施例提供的上述技术方案与现有技术相比具有如下优点:

本申请实施例提供的该方法,当监测到与视频相关的当前操作事件时,获取当前时刻的视频帧,以及图片中的人脸头像图片,并获得人脸头像图片对应的人物的人物标识,从而更新视频的人物列表中与人物标识对应的展示次序。即,采用本申请的方案,可以基于用户对视频的操作,更新视频的人物列表的排序,从而实现有针对性地向用户展示视频的人物列表。

附图说明

此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。

图1为本申请实施例中一种列表更新方法的流程示意图;

图2为本申请实施例中另一种列表更新方法的流程示意图;

图3为本申请实施例中另一种列表更新方法的流程示意图;

图4为本申请实施例中电子设备的结构示意图;

图5为本申请实施例中列表更新装置的结构示意图。

具体实施方式

为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。

当不同用户观看同一视频时,为了实现有针对性地向用户展示视频的人物列表,本申请提出了一种列表更新方法,该方法可以应用于服务器侧,也可以应用于客户端侧的任意一个电子设备。

以下从客户端侧描述该列表更新方法,如图1所示,该方法包括:

步骤101、获取当前时刻的视频帧。

当前时刻为监测到与视频相关的当前操作事件的时刻。

一个例子中,该当前操作事件可以为对视频的拖动事件。

此时,当前时刻为拖动事件结束时的时刻。

实际应用中,当用户通过电子设备观看视频时,用户拖动视频的进度条,电子设备监测到拖动事件;当用户的拖动动作结束时,电子设备可以确定拖动事件的结束时刻,以获取结束时刻的视频帧。

另一个例子中,该操作事件可以为对视频的点击事件。

实际应用中,当用户通过电子设备观看视频时,可以通过电子设备的显示界面点击视频,电子设备监测到该点击事件,确定点击事件对应的当前时刻,以获取当前时刻的视频帧。

另一个例子中,该操作事件可以为对AI(Artificial Intelligence,人工智能)识人按钮的点击事件,其中AI识人按钮为在显示视频的界面上显示的虚拟按钮。

实际应用中,用户通过电子设备观看视频时,点击AI识人按钮,电子设备监测到该点击事件,确定点击事件对应的当前时刻,以获取当前时刻的视频帧。

可选地,由于视频帧对应的图像像素尺寸较大,因此,为了降低运算量以及节省网络带宽,本实施例在获得当前时刻的视频帧后,可以对视频帧进行格式转换以及压缩处理。

具体地,将视频帧由YUV格式转换为RGB格式,并对RGB格式的视频帧进行压缩处理,得到JPEG格式的视频帧。

步骤102、获取视频帧中的人脸头像图片。

可选地,本实施例可以采用预先训练的人脸检测模型,推理得到人脸头像在图片中的目标区域,并从视频帧中截取目标区域对应的人脸头像图片。

可选地,在识别人脸头像在视频帧中的目标区域时,可以利用滑动窗口,识别视频帧中人脸头像的区域,得到包含人脸头像的目标区域。

具体实现时,从视频帧中获取滑动窗口每次移动后的子图片,并采用神经网络模型对子图片进行识别,如果识别得到子图片为人脸头像图片的一部分,则保留该子图片,直至识别到图片中的整个人脸头像图片。

其中,滑动窗口的尺寸小于视频帧的像素尺寸。

示例性地,滑动窗口可以为矩形窗口,因此得到的目标区域也可以为矩形区域。

可选地,可以通过获取目标区域的坐标,截取图片中与目标区域的坐标对应的图片,从而得到人脸头像图片。

示例性地,在采用滑动窗口识别目标区域时,由于目标区域对应有多个子图片,因此可以通过子图片的像素坐标确定目标区域的坐标。

示例性地,可以通过调用Windows的Gdiplus(图形设备)图形库,截取图片中与目标区域的坐标对应的图片,得到人脸头像图片。

可选地,本实施例中,为了提高识别准确度,人脸头像图片的像素尺寸,最小支持112*112。

可选地,本实施例,为了加快人脸检测模型的执行速度,可以将人脸检测模型装载到设备,如图形处理器(GPU)设备。具体实现时,在GPU上创建推理引擎,并利用推理引擎装载人脸检测模型至图形处理器设备。

可选地,还可以基于推理引擎,创建与人脸检测模型对应的推理请求,利用推理请求对视频帧进行推理,得到人脸头像在视频帧中的目标区域,并利用目标区域从视频帧中截取人脸头像图片。

示例性地,在人脸检测模型中,可以利用滑动窗口,检测视频帧中的人脸图像的区域,得到包含人脸图像的目标区域。

其中,滑动窗口的尺寸小于视频帧的像素尺寸。

可选地,滑动窗口可以为矩形窗口,因此得到的目标区域也可以为矩形区域。

具体实现时,从图片中获取滑动窗口每次移动后的子图片,并采用神经网络模型对子图片进行识别,如果识别得到子图片为人脸图像图片的一部分,则保留该子图片,直至识别到图片中的整个人脸图像图片。

可选地,在截取人脸头像图片时,可以获取目标区域的坐标,从视频帧中截取与目标区域的坐标对应的人脸头像图片。

本实施例中,由于目标区域对应有多个子图片,因此可以通过上述子图片的像素坐标确定目标区域的坐标。

示例性地,可以通过调用Windows的Gdiplus(图形设备)图形库,截取视频帧中与目标区域的坐标对应的图片,得到人脸头像图片。

可选地,本实施例中,为了提高识别准确度,人脸头像图片的像素尺寸,最小支持112*112。

可选地,本实施例中,获取当前时刻的视频帧后,可以将视频帧存储在本地,因此在采用人脸检测模型对视频帧进行推理前,可以基于视频帧的本地存储路径,从本地读取视频帧的图片二进制数据,以获取视频帧。

示例性地,可以通过电子设备中的文件格式读取库(FormatReader)库基于本地存储路径,读取视频帧的图片二进制数据,并向人脸检测模型输入该图片二进制数据。

可选地,在将人脸检测模型装载到设备时,获得与人脸检测模型对应的中间文件,并由设备加载中间文件,从而实现对人脸检测模型的装载。

可选地,人脸检测模型的中间文件可以包括第一文件和第二文件。

其中,第一文件用于描述人脸检测模型的网络拓扑结构,第二文件包括人脸检测模型的模型参数和模型变量。

示例性地,第一文件的文件格式可以为XML文件,即在得到人脸检测模型的网络拓扑结构后,可以将该网络拓扑结构存储于XML文件中,从而得到第一文件。

示例性地,第二文件的文件格式可以为BIN文件。

基于上述中间文件的具体实现,在加载中间文件时,如图2所示,可以包括以下步骤:

步骤201、获取第二文件中的模型参数和模型变量;

步骤202、利用模型参数和模型变量,得到人脸检测模型的权重参数;

步骤203、加载第一文件和权重参数,以实现对中间文件的加载。

步骤103、获得人脸头像图片对应的人物的人物标识。

可选地,客户端可以向服务器发送人脸头像图片,以由服务器识别得到人脸头像图片中的人物的人物标识,并接收服务器返回的识别结果,即人物标识。

步骤104、将视频的人物列表中与人物标识对应的展示次序,由当前次序更新为目标次序,以便在展示人物列表时,按照目标次序提前展示人物标识对应的人物信息。

本实施例中,人物列表中包括多条人物信息,每条人物信息包括人物标识、人物的姓名、以及人物的头像等信息。

本实施例中,当存在用户对人物列表的操作信息时,如用户对人物列表的点击操作,电子设备可以基于该操作信息,按照目标次序,向用户显示人物列表中的人物信息。

可选地,本实施例中,可以根据人物标识对应的权重确定目标次序,此处暂不展开,后面详述。

可选地,当人物列表中人物标识对应的展示次序更新为目标次序时,可以将人物列表中的其它人物信息的展示次序顺次下移,其中,其它人物信息指的是展示次序会基于人物标识对应的展示次序的改变而相应发生改变的人物信息。

例如,检测到拖动事件前,人物列表中的人物信息的展示次序可参见表一:

表一

基于拖动事件所得到人物标识与人物信息C对应,当确定的人物信息C的目标次序为在人物列表中的第二行显示时,更新后的人物列表可以参见表二:

表二

可见,人物信息B的展示次序基于人物标识对应的展示次序的改变而相应发生改变,因此基于人物信息C的展示次序的改变,人物信息B的展示次序顺次下移,将人物信息B的展示次序由在人物列表的第二行展示更改为在第三行展示。

可选地,人物列表中的各人物信息的初始的展示次序,可以由服务器下发给客户端。

示例性地,初始的展示次序可以与视频观看用户的用户画像对应,因此对于同一视频,当视频观看用户的用户画像不同时,人物列表的初始的展示次序也不同。

其中,用户画像包括年龄、性别、兴趣等参数。

可选地,本实施例中,人物列表的更新周期可以包括以下两种情况:

其一,当检测到拖动事件时才更新人物列表中的各人物信息的展示次序。

此种情况下,当人物列表中人物标识对应的展示次序更新为目标次序后,当再次检测到拖动事件时,才会根据再次检测到的拖动事件更新人物列表中的各人物信息的展示次序。

其二,结合拖动事件和预设更新周期更新人物列表中各人物信息的展示次序。

此种情况下,当人物列表中人物标识对应的展示次序更新为目标次序后,当再次检测到拖动事件或预设更新周期到来时,再次更新人物列表中各人物信息的展示次序。

如,当预设更新周期到来时,按照操作时间发生后的展示次序或人物列表的初始的展示次序,对任务列表中的各任务信息的展示次序进行更新。

本申请实施例提供的该方法,当监测到与视频相关的当前操作事件时,获取当前时刻的视频帧,以及图片中的人脸头像图片,并获得人脸头像图片对应的人物的人物标识,从而更新视频的人物列表中与人物标识对应的展示次序。即,采用本申请的方案,可以基于用户对视频的操作,更新视频的人物列表的排序,从而实现有针对性地向用户展示视频的人物列表。

在本申请的又一实施例中,在前述步骤101至步骤104的实施例的基础上,如图3所示,步骤104可以包括:

步骤301、获取当前次序下与人物标识对应的当前权重。

本实施例中,人物标识对应的当前权重包括以下两种情况:

其一,当前权重为用户上一次操作事件结束后确定的上一次目标权重。

其二,当前权重为初始预设值。

此种情况下,当确定不存在上一次目标权重时,将当前权重设为初始预设值。

其中,初始预设值可以人为设置。

本实施例中,人物列表中的各人物信息的初始预设值相同。

步骤302、确定与当前权重和预设权重变量对应的目标权重。

本实施例中,预设权重变量为用户预先设置。

可选地,可以对当前权重和预设权重变量进行求和运算,得到目标权重。

可选地,当人物标识对应的权重由当前权重更新为目标权重时,人物列表中的其它人物信息所对应的权重,也会相应发生变化。

示例性地,当目标权重为当前权重和预设权重变量进行求和运算得到时,相应地,其它人物信息所对应的权重会基于预设权重变量进行减法运算而减小。

例如,当人物标识对应的当前权重为1、其它人物信息对应的权重为1、同时预设权重变量也为1时,得到的目标权重可以为2,其它人物信息所对应的权重则变为0。

步骤303、利用目标权重,确定与人物标识对应的目标次序。

本实施例中,可以预先设置权重与次序的对应关系,因此,当确定目标权重后,可以利用预设的权重与次序的对应关系,确定与目标权重对应的目标次序。

以下以操作事件为拖动事件,举例说明根据权重对人物列表的展示次序进行更新的过程:

检测到拖动事件前,人物列表中具有人物信息A、人物信息B和人物信息C,设定三个人物信息对应的当前权重均为1,当用户拖动一次视频进度条到只有人物B所在的视频帧时,根据识别结果,人物B权重会增加1,即人物B的目标权重变为2,此时,人物A、C的权重均变为0,因此在根据权重重排人物列表后,人物列表中人物信息的展示次序由A、B、C,变为B、A、C。

至此完成从客户端侧对列表更新方法的描述。

本申请实施例中,列表更新方法还可以在服务器侧执行,此时,步骤101-步骤104均发生于服务器侧,其中步骤101、步骤102和步骤104的具体实现过程与客户端侧相同,此处不再展开描述。

关于步骤103,服务器可以直接识别得到人脸头像图片中的人物的人物标识,而无需再与客户端进行交互。

具体地,服务器对人脸头像图片识别的过程包括人脸特征点标记和人脸识别两个过程。

人脸特征点标记包括人脸五官的特征点标记和人脸轮廓的特征点标记。

人脸五官的特征点标记基于三层次的DCNN-深度卷积神经网络模型实现,人脸五官的特征点标记过程可以包括以下三部分:

第一、向第一层次的卷积神经网络输入人脸头像图片,标记人脸五官所在的五官区域;

第二、向第二层次的卷积神经网络输入标记有五官区域的人脸头像图片,对人脸头像图片中的五官进行特征点的标记;

第三、基于标记的特征点,从人脸头像图片中分割得到五官图像,采用第三层次的卷积神经网络模型对五官图像进行进一步标记。

人脸轮廓的特征点标记过程可以包括:

第一、基于图片和五官区域,获得人脸轮廓区域;

第二、利用深度卷积神经网络,对人脸轮廓区域进行特征点的标记。

实际应用中,对人脸轮廓区域的特征点的标记,可以为对下巴、额头以及脸颊等部位的标记。

在得到五官图像的特征点和人脸轮廓的特征点后,可以基于人脸图像图片、五官图像的特征点和人脸轮廓的特征点生成特征向量。

人脸识别的过程可以包括:

从数据库中查找与特征向量匹配度最高的目标特征向量;

其中,数据库中存储有多个人物头像的特征向量。

示例性地,与特征向量匹配度最高的目标特征向量可以是,与特征向量相似度度最高的目标特征向量。

获取特征向量与目标特征向量的匹配度值;

当匹配度值大于预设的匹配度阈值时,将目标特征向量对应的人物头像的人物标识,作为人脸头像图片对应的人物的人物标识。

基于同一构思,本申请实施例中还提供了一种电子设备,如图4所示,该电子设备主要包括:处理器401、通信接口402、存储器403和通信总线404,其中,处理器401、通信接口402和存储器403通过通信总线404完成相互间的通信。其中,存储器403中存储有可被至处理器401执行的程序,处理器401执行存储器403中存储的程序,实现如下步骤:获取当前时刻的视频帧,当前时刻为监测到与视频相关的当前操作事件的时刻;获取视频帧中的人脸头像图片;获得人脸头像图片对应的人物的人物标识;将视频的人物列表中与人物标识对应的展示次序,由当前次序更新为目标次序,以便在展示人物列表时,按照目标次序提前展示人物标识对应的人物信息。

上述电子设备中提到的通信总线404可以时外设部件互连标准(PeripheralComponent Interconnect,简称PCI)总线或扩展工业标准结构(Extended IndustryStandard Architecture,简称EISA)总线等。该通信总线404可以分为地址总线、数据总线、控制总线等。为便于表示,图4中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。

通信接口402用于上述电子设备与其他设备之间的通信。

存储器403可以包括随机存取存储器(Random Access Memory,简称RAM),也可以包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。可选地,存储器还可以是至少一个位于远离前述处理器401的存储装置。

上述的处理器401可以是通用处理器,包括中央处理器(Central ProcessingUnit,简称CPU)、网络处理器(Network Processor,简称NP)等,还可以是数字信号处理器(Digital Signal Processing,简称DSP)、专用集成电路(Application SpecificIntegrated Circuit,简称ASIC)、现场可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。

在本申请的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,当该计算机程序在计算机上运行时,使得计算机执行上述实施例中所描述的列表更新方法。

基于相同的发明构思,本申请实施例还提供一种列表更新装置,如图5所示,包括:

第一获取单元501,用于获取当前时刻的视频帧,当前时刻为监测到与视频相关的当前操作事件的时刻;

第二获取单元502,用于获取视频帧中的人脸头像图片;

获得单元503,用于获得人脸头像图片对应的人物的人物标识;

更新单元504,用于将视频的人物列表中与人物标识对应的展示次序,由当前次序更新为目标次序,以便在展示人物列表时,按照目标次序提前展示人物标识对应的人物信息。

在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。该计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行该计算机指令时,全部或部分地产生按照本申请实施例所述的流程或功能。该计算机可以时通用计算机、专用计算机、计算机网络或者其他可编程装置。该计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,计算机指令从一个网站站点、计算机、服务器或者数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、微波等)方式向另外一个网站站点、计算机、服务器或数据中心进行传输。该计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。该可用介质可以是磁性介质(例如软盘、硬盘、磁带等)、光介质(例如DVD)或者半导体介质(例如固态硬盘)等。

需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

以上所述仅是本发明的具体实施方式,使本领域技术人员能够理解或实现本发明。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所申请的原理和新颖特点相一致的最宽的范围。

相关技术
  • 列表更新方法、电子设备、存储介质及装置
  • 一种主题列表的更新方法、装置、电子设备及存储介质
技术分类

06120112900984