基于连麦直播的直播画面处理方法、装置及电子设备与流程

文档序号:24387810发布日期:2021-03-23 11:22阅读:215来源:国知局
基于连麦直播的直播画面处理方法、装置及电子设备与流程

本申请涉及直播技术领域,具体而言,本申请涉及一种基于连麦直播的直播画面处理方法、装置及电子设备,还涉及一种计算机可读存储介质。



背景技术:

目前,随着互联网应用的兴起,用户越来越倾向于选择在线视频直播或小视频的方法,与他人分享一些趣闻或进行现场才艺表演。其中,连麦直播业务是指主播通过主播终端与主播连麦者的终端(也称为接入终端)建立连麦会话连接,在建立连麦会话连接之后,主播可以与直播连麦者进行双向的音视频互动,而观众可以观看该主播与该直播连麦者的音视频互动过程。

在连麦直播技术中,主播终端获取自身采集的主播直播画面,也即是第一直播画面,并获取接入终端采集的直播连麦者的直播画面,也即是第二直播画面,将第一直播画面和第二直播画面进行缩放、裁剪和重布局后合成视频流发送到观众终端进行展示。为了构造出较为真实的互动效果,直播平台给出相关提示以提醒主播朝向指定方向以在合成画面营造出主麦主播和连麦主播面对面互动的效果,例如,主麦主播向左伸出手,连麦主播向右伸出手,做出握手动作,然而在实践中,主播有时候没有按照指定方向做出动作,例如,主麦主播向右伸出手,连麦主播也向右伸出手,导致握手动作失败,影响主播互动效果。



技术实现要素:

本申请的目的旨在至少解决上述技术缺陷之一,特别是连麦直播画面不协调,影响主播间交互效果的问题。

第一方面,本申请提供了一种基于连麦直播的直播画面处理方法,包括以下步骤:

获取进行连麦直播的至少两路直播视频流,对至少一路所述直播视频流进行人脸朝向识别,确定所述直播视频流中的主播人物的人脸朝向;

计算所述人脸朝向与预设指示朝向之间的偏差角度;

在所述偏差角度达到预设角度阈值时,对所述直播视频流进行翻转处理得到翻转直播视频流,利用所述翻转直播视频流合成得到连麦直播视频流。

在一种可能的实现方式中,所述获取进行连麦直播的至少两路直播视频流,对至少一路所述直播视频流进行人脸朝向识别,确定所述直播视频流中的主播人物的人脸朝向的步骤包括:

从主播终端获取主麦主播所在的第一直播图像序列,从接入终端获取连麦主播的第二直播图像序列;

提取所述第一直播图像序列和所述第二直播图像序列中的至少一者中人脸区域的特征关键点;

根据所述特征关键点对所述直播视频流进行人脸朝向识别,得到对应的图像序列中主播人物的人脸姿态;

基于所述人脸姿态确定所述直播视频流中的主播人物的人脸朝向。

在一种可能的实现方式中,所述计算所述人脸朝向与预设指示朝向之间的偏差角度的步骤包括:

根据所述人脸朝向估计所述主播人物的头部偏转角度;

计算所述头部偏转角度与预设指示朝向对应的标准角度的差值,得到所述人脸朝向与预设指示朝向之间的偏差角度。

在一种可能的实现方式中,所述在所述偏差角度达到预设角度阈值时,对所述直播视频流进行翻转处理的步骤包括:

在所述偏差角度达到预设角度阈值、且持续时间达到预设时间阈值时,根据所述偏差角度对所述直播视频流中的主播人物进行水平翻转处理得到翻转直播视频流。

在一种可能的实现方式中,所述对所述直播视频流进行翻转处理得到翻转直播视频流的步骤包括:

在预设时间段内检测到所述直播视频流中的主播人物开始做出指定动作时,在所述直播视频流对应的视频图像上插入翻转开始标识,得到翻转开始位置;

当检测到所述直播视频流中的主播人物结束做出指定动作时,在所述直播视频流对应的视频图像上插入翻转结束标识,得到翻转结束位置;

对翻转开始位置和翻转结束位置之间的直播视频流中的主播人物进行翻转处理。

在一种可能的实现方式中,所述利用所述翻转直播视频流合成得到连麦直播视频流的步骤包括:

获取预先配置的连麦直播画面的合成模板;

根据所述合成模板将所述翻转直播视频流与其他参与连麦的直播视频流进行合成,得到连麦直播视频流。

在一种可能的实现方式中,所述翻转直播视频流为连麦主播所在的直播视频流;

所述根据所述合成模板将所述翻转直播视频流与其他参与连麦的直播视频流进行合成,得到连麦直播视频流的步骤包括:

按照所述合成模板,将主麦主播所对应的直播视频流设置在所述合成模块的左侧,将所述翻转直播视频流设置在所述合成模板的右侧进行合成,得到连麦直播视频流。

第二方面,本申请提供了一种基于连麦直播的直播画面处理装置,包括:

人脸朝向确定模块,用于获取进行连麦直播的至少两路直播视频流,对至少一路所述直播视频流进行人脸朝向识别,确定所述直播视频流中的主播人物的人脸朝向;

偏差角度计算模块,用于计算所述人脸朝向与预设指示朝向的偏差角度;

直播视频合成模块,用于在所述偏差角度达到预设角度阈值时,对所述直播视频流进行翻转处理得到翻转直播视频流,利用所述翻转直播视频流合成得到连麦直播视频流。

第三方面,本申请提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现第一方面所提及的基于连麦直播的直播画面处理方法。

第四方面,本申请提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,该程序被处理器执行时实现第一方面所提及的基于连麦直播的直播画面处理方法。

上述实施例提供的基于连麦直播的直播画面处理方法、装置及电子设备,通过获取进行连麦直播的至少两路直播视频流,对至少一路直播视频流进行人脸朝向识别,确定直播视频流中的主播人物的人脸朝向,并计算人脸朝向与预设指示朝向之间的偏差角度;在偏差角度达到预设角度阈值时,对直播视频流进行翻转处理得到翻转直播视频流,利用翻转直播视频流合成得到连麦直播视频流,在主麦主播或连麦主播做出的动作不符合预设指示朝向时,实现直播视频流中相关画面的翻转处理,避免了主麦主播或连麦主播做出错误朝向的动作影响直播互动效果,提供连麦主播过程中主播之间互动成功率,提高直播互动效果。

本申请附加的方面和优点将在下面的描述中部分给出,这些将从下面的描述中变得明显,或通过本申请的实践了解到。

附图说明

本申请上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:

图1a是本申请一实施例提供的一种连麦直播的直播系统的示意图;

图1b是本申请一实施例提供的一种连麦直播的直播系统的另一示意图;

图1c是相关技术中连麦直播的合成画面示意图;

图2是一实施例提供的一种基于连麦直播的直播画面处理方法的流程图;

图3a是本申请一实施例提供的连麦直播的合成画面的第一示意图;

图3b是本申请一实施例提供的连麦直播的合成画面的第二示意图;

图3c是本申请一实施例提供的连麦直播的合成画面的第三示意图;

图4是本申请实施例提供的一种基于连麦直播的直播画面处理装置的结构示意图;

图5为本申请一实施例提供的一种电子设备的结构示意图。

具体实施方式

下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本申请,而不能解释为对本申请的限制。

本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本申请的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。

本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本申请所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样被特定定义,否则不会用理想化或过于正式的含义来解释。

在对本申请实施例进行详细的解释说明之前,先对本申请实施例的应用场景予以介绍。本申请实施例提供的方法应用于连麦直播的直播场景中,具体的应用于主播与其他直播间内的主播进行连麦直播的场景中,或者主播与某一观众进行连麦的场景中。例如,主播可以在游戏互动过程中,通过与另一主播进行连麦直播与另一主播进行互动操作,如做出握手、拥抱等动作等。

图1a是本申请一实施例提供的一种连麦直播的直播系统示意图,如图1a所示,该直播系统包括主播终端101,接入终端102和直播服务器103,接入终端102为与主播终端101进行连麦直播的直播终端,其中,主播终端101为主麦主播所在的终端,接入终端102包括连麦主播终端和观众终端。在基于连麦直播进行直播的过程中,主播终端101则可以获取自身采集的第一直播视频流并传输到直播服务器103中,接入终端102可以获取采集的第二直播视频流,并将该第二直播视频流发送给直播服务器103,直播服务器103获取第一直播视频流和第二直播视频流,将第一直播视频流与第二直播视频流进行合成,得到连麦直播视频流;将该连麦直播视频流转发给观众终端104,从而基于连麦直播画面进行直播。

图1b是本申请一实施例提供的一种连麦直播的直播系统的另一示意图,如图1b所示,该直播系统包括主播终端101,接入终端102和直播服务器(简称服务器,下同)103,接入终端102为与主播终端101进行连麦直播的直播终端,其中,主播终端101为主麦主播所在的终端,接入终端102包括连麦主播终端和观众终端。在基于连麦直播进行直播的过程中,主播终端101则可以获取自身采集的第一直播视频流,接入终端102可以获取采集到的连麦主播的第二直播视频流,并将该第二直播视频流发送给直播服务器103,主播终端101从直播服务器103中获取第二直播视频流,并将第一直播视频流与第二直播视频流进行合成,得到连麦直播视频流,将该连麦直播视频流发送至直播服务器103,由该直播服务器103转发给观众终端104,从而基于连麦直播画面进行直播。

需要说明的是,主播终端101及其主麦主播,接入终端102及其连麦主播是相对概念。通常而言,观众进入某一直播间,则该直播间对应的主播为主麦主播,主麦主播对应的终端为主播终端,其余不属于该直播间的主播为连麦主播,连麦主播对应的终端为接入终端,也即是,进行连麦主播的主播a和主播b,若处于主播a所在的直播间,主播a为主麦主播,主播b为连麦主播,若处于主播b所在的主播间,主播a为连麦主播,主播b为主麦主播。

在相关技术中,主播终端101采集到的第一直播视频流和接入终端102采集到第二直播视频流,将第一直播视频流和第二直播视频流传输至直播服务器103,在直播服务器103上按照预设配置好的连麦直播画面的合成模板,将第一直播视频流和第二直播视频流进行合成,得到连麦直播视频流,在合成模板中,主播终端101采集到的第一直播视频流固定设置在合成模板的左侧,接入终端102采集到的的第二直播视频流固定设置在合成模板的右侧,以进行连麦直播画面的合成。在一些直播活动中,主麦主播和连麦主播进行互动操作,例如,主麦主播和连麦主播进行握手,主麦主播朝向右侧伸出手,连麦主播朝向左侧伸出手,做出握手动作。然而,有一些主播没有按照直播平台下发的提示方向进行动作,例如,如图1c所示,图1c是相关技术中连麦直播的合成画面示意图,主麦主播朝向右侧伸出手,连麦主播也向右侧伸出手,若简单地将第一直播视频流和第二直播视频流进行合成,由于主麦主播和连麦主播并没有面朝对方做出伸手动作,导致握手动作失败,影响直播互动效果。

本申请提供的基于连麦直播的直播画面处理方法、装置及电子设备,旨在解决现有技术的如上技术问题。

下面以具体地实施例对本申请的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。

下面将结合附图,对本申请的实施例进行详细描述。

图2是一实施例提供的一种基于连麦直播的直播画面处理方法的流程图,该方法应用于主播终端或直播服务器中。下面以直播服务器为例进行说明。

具体的,如图2所示,该基于连麦直播的直播画面处理方法可以包括以下步骤:

s210、获取进行连麦直播的至少两路直播视频流,对至少一路所述直播视频流进行人脸朝向识别,确定所述直播视频流中的主播人物的人脸朝向。

在本申请方案中,可以是一个主麦主播和一个连麦主播/观众进行连麦直播,也可以是一个主麦主播和多个连麦主播/观众进行连麦直播。下面以主麦主播与连麦主播进行连麦直播对本方案进行解释。通常而言,主播在进行互动时需要人脸朝向对方,以给观众一种主播在面对面进行互动的视觉效果,从而增强连麦直播的互动真实性。

服务器获取进行连麦直播的至少两路直播视频流,包括主麦主播所对应的第一直播视频流和连麦主播所对应的第二直播视频流。

可选的,在本实施例中,可以是对接入设备所采集到的其中一路第二直播视频流进行人脸朝向识别;在多人连麦直播中,还可以是对接入设备所采集到的多路第二直播视频流进行人脸朝向识别。在一些实施例中,还可以是仅对主播终端所采集到的第一直播视频流进行人脸朝向识别,还可以是对主播终端所采集到的第一直播视频流和接入设备采集到的第二直播视频流均进行人脸朝向识别。

人脸朝向识别用于识别出视频图像中主播人物的人脸朝向,当人脸朝向不同的方向时,眼睛在图像中的位置差别较大。可选的,在一实施例中,可以将视频图像中描述眼睛位置的特征信息通过sobel边缘算子提取出来作为预设神经网络,如lvq神经网络的输入,人脸朝向作为神经网络的输出,利用matlab工具箱通过对训练集的图片进行训练,得到具有预测识别功能的网络,从而可以对任意给出的人脸图像进行判断和识别。

当然,在本实施例中,还可以通过其他方式确定直播视频流中的主播人物的人脸朝向,例如,通过提取人脸区域的关键点,根据关键点的位置确定人脸朝向,还可以是通过检测人眼的视线方向,根据视线方向确定人脸朝向等。

s220、计算所述人脸朝向与预设指示朝向之间的偏差角度。

在本实施例中,根据人脸朝向对应的偏转角度,该偏角角度可以是基于空间位置上的偏转角度,也可以是基于二维平面上的偏转角度。

预设指示朝向可以直播平台下发到主播间上的提示朝向,例如,连麦的两位主播需要完成握手互动任务,则根据握手互动任务向连麦直播的直播间下发消息,提示主播在预设指示朝向上作出伸手动作。在本实施例中,预设指示朝向可以是参考朝向,大概的偏转角度或者角度范围值。

为了便于计算人脸朝向与预设指示朝向之间的偏差角度,可以设定预设指示朝向对应的角度,如预设指示朝向为左前方,可以认为是前方偏转左45度角的方向,若预设指示方向为角度范围值,只将该角度范围值的中间值作为该预设指示朝向对应的角度等。

在本申请一实施例中,该步骤s220计算所述人脸朝向与预设指示朝向之间的偏差角度,可以包括以下步骤:

s2201、根据所述人脸朝向估计所述主播人物的头部偏转角度。

在本实施例中,根据人脸朝向获得主播人物的头部偏转角度信息。一般可以用旋转矩阵、旋转向量、四元数或欧拉角表示。

s2202、计算所述头部偏转角度与预设指示朝向对应的标准角度的差值,得到所述人脸朝向与预设指示朝向之间的偏差角度。

在本实施例中,根据人脸朝向确定人脸朝向的头部偏转角度,将预设指示朝向对应的角度与头部偏转角度相比较,计算人脸偏转角度与预设指示朝向对应的角度之间的差值,得到人脸朝向与预设指示朝向之间的偏差角度。

s230、在所述偏差角度达到预设角度阈值时,对所述直播视频流进行翻转处理得到翻转直播视频流,将所述翻转直播视频流与其余的直播视频流进行合成得到连麦直播视频流。

其中,预设角度阈值包括预设角度朝向和预设角度值大小。翻转直播视频流是指发生翻转动作的直播视频流,可以是对视频流中的局部区域进行翻转,如主播人物所在区域,还可以是对整帧视频图像进行翻转。

在本实施例中,当偏差角度达到预设角度阈值,比如,人脸朝向与预设角度的朝向不同、且偏差角度达到预设角度值,则说明直播视频流中的主播人物的动作偏差严重,需要进行校正处理。在本实施例中,可以是对接入的连麦主播的直播画面进行翻转处理,还可以是对主麦主播的直播画面进行翻转处理,再可以是对接入的连麦主播和主麦主播的直播画面均进行翻转处理,以使得直播画面中的主播人物的人脸朝向符合预设指示朝向,得到翻转直播视频流。

在本申请另一实施例中,在所述偏差角度达到预设角度阈值、且持续时间达到预设时间阈值时,根据所述偏差角度对所述直播视频流中的主播人物进行水平翻转处理得到翻转直播视频流。

在本实施例中,当偏差角度达到预设角度阈值、且偏差角度达到预设角度阈值的持续时间达到预设时间阈值时,才对该直播视频流进行翻转处理,从而避免主播短时间内偏差角度达到预设角度阈值,即对直播视频流进行翻转处理,给人闪屏的感觉,从而影响观众用户的视觉效果。

进一步的,根据偏差角度对直播视频流中的主播人物进行水平翻转处理,即水平镜像翻转处理,得到翻转直播视频流。例如,直播视频流中的主播人物的人脸朝向对应的角度为朝右前方,预设指示朝向为朝右前方,则根据偏差角度计算出朝右前方与朝右前方之间的中轴线,以该中轴线为对称线,对直播视频流进行镜像对称翻转处理得到翻转直播视频流。

在一实施例中,步骤s230中的利用翻转直播视频流合成得到连麦直播视频流,可以包括:

(1)获取预先配置的连麦直播画面的合成模板。

通常情况下,直播应用程序会预先配置好连麦直播画面的合成模板,以在固定位置显示主麦主播所在位置。例如,在双人连麦直播中,主麦主播对应的第一直播视频流固定显示在合成模板的左侧,连麦主播对应的第二直播视频流固定显示在合成模板的右侧,在四人连麦直播中,主麦主播对应的第一直播视频流固定显示在合成模板的左上方,连麦主播对应的第二直播视频流固定显示在合成模板的右上方、左下方和右下方。

(2)根据所述合成模板将所述翻转直播视频流与其他参与连麦的直播视频流进行合成,得到连麦直播视频流。

在本实施例中,需要确定发生翻转的翻转直播视频流对应的主麦主播所在的第一直播视频流,还是连麦主播所在的第二直播视频流,根据第一直播视频流和第二直播视频流在合成模板中的位置,将翻转直播视频流与其他参与连麦的直播视频流设置在对应的位置上进行合成,得到连麦直播视频流。

进一步的,合成得到的连麦直播视频流下发至观众端进行显示。从观众端的角度上看,观众端进入主麦主播所在的直播间,主麦主播所对应的第一直播视频流固定显示在直播界面的左侧,接入的连麦主播所对应的第二直播视频流固定显示在直播界面的右侧。

例如,在一实施例中,翻转直播视频流为连麦主播所在的直播视频流(即第二直播视频流);其他参与连麦的直播视频流为主麦主播所对应的直播视频流(即第一直播视频流),按照合成模板,将第一直播视频流设置在所述合成模块的左侧,将翻转直播视频流(翻转后的第二直播视频流)设置在所述合成模板的右侧进行合成,得到连麦直播视频流。

例如,如图3a所示,图3a是本申请一实施例提供的连麦直播的合成画面的第一示意图,从观众端的角度来看,主麦主播和连麦主播做出握手动作时,主麦主播朝向右前方伸出右手,若连麦主播也朝向右前方伸出左手,检测到连麦主播的人脸朝向不符合预设指定朝向,则将连麦主播所在的第二直播视频流进行水平镜像翻转处理,以使得从观众端的角度来看,连麦主播做出朝向左前方伸出左手的动作,从而主麦主播和连麦主播朝向对方做出握手动作。

在另一实施例中,若翻转直播视频流对应的主麦主播所对应的第一直播视频流,则按照合成模板将翻转直播视频流(即翻转后的第一直播视频流)设置在合成模板的左侧,其他参与连麦的直播视频流(即连麦主播所对应的第二直播视频流)设置在合成模板的右侧进行合成,得到连麦直播视频流。

如图3b所示,图3b是本申请一实施例提供的连麦直播的合成画面的第二示意图,从观众端的角度来看,主麦主播和连麦主播做出握手动作时,主麦主播朝向左前方伸出右手,连麦主播朝向左前方伸出左手,检测到主麦主播的人脸朝向不符合预设指定朝向,则将主麦主播所在的第一直播视频流进行水平镜像翻转处理,以使得从观众端的角度来看,主麦主播做出朝向右前方伸出左手的动作,连麦主播朝向左前方伸出左手,从而主麦主播和连麦主播朝向对方做出握手动作。

在再一实施例中,若翻转直播视频流为主麦主播所对应的第一直播视频流以及连麦主播所对应的第二直播视频流,则按照合成模板翻转后的第一直播视频流设置在合成模板的左侧,将翻转后的第二直播视频流设置在合成模板的右侧进行合成,得到连麦直播视频流。

如图3c所示,图3c是本申请一实施例提供的连麦直播的合成画面的第三示意图,从观众端的角度来看,主麦主播和连麦主播做出握手动作时,主麦主播朝向左前方伸出右手,连麦主播朝向右前方伸出左手,检测到主麦主播和连麦主播的人脸朝向不符合预设指定朝向,则将主麦主播所在的第一直播视频流进行水平镜像翻转处理,将连麦主播所在的第二直播视频流进行水平镜像翻转处理,以使得从观众端的角度来看,主麦主播做出朝向右前方伸出左手的动作,连麦主播朝向左前方伸出左手,从而主麦主播和连麦主播朝向对方做出握手动作。

本实施例提供的连麦直播的直播画面处理方法,通过获取进行连麦直播的至少两路直播视频流,对至少一路直播视频流进行人脸朝向识别,确定直播视频流中的主播人物的人脸朝向,并计算人脸朝向与预设指示朝向之间的偏差角度;在偏差角度达到预设角度阈值时,对直播视频流进行翻转处理得到翻转直播视频流,利用翻转直播视频流合成得到连麦直播视频流,在主麦主播或连麦主播做出的动作不符合预设指示朝向时,快速实现直播视频流中相关画面的翻转处理,避免了主麦主播或连麦主播做出错误朝向的动作,影响直播互动效果。

为了更清楚的阐述本申请的技术方案,下面针对基于连麦直播的直播画面处理方法的多个步骤进行进一步说明。

在一实施例中,步骤s210中的获取进行连麦直播的至少两路直播视频流,对至少一路所述直播视频流进行人脸朝向识别,确定所述直播视频流中的主播人物的人脸朝向,可以包括以下步骤:

s2101、从主麦主播终端获取主麦主播所在的第一直播图像序列,从连麦主播终端获取连麦主播的第二直播图像序列。

其中,第一直播图像序列是通过主麦主播终端采集到的主麦主播视频流中的多张有序视频图像,第二直播图像序列是通过连麦主播终端采集到的连麦主播视频流中的多张有序视频图像。

在本实施例中,第一直播图像序列和第二直播图像序列可以是主播用户执行互动任务过程中拍摄得到的图像序列。

s2102、提取所述第一直播图像序列和所述第二直播图像序列中的至少一者中人脸区域的特征关键点。

对第一直播图像序列和第二直播图像序列进行人脸识别,确定第一直播图像序列和第二直播图像序列中的人脸区域。利用相关算法进行人脸关键点检测,一般常见68个关键点检测模型,其中,下巴包括8个特征关键点,鼻尖包括30个特征关键点,左眼角包括36个特征关键点,右眼角包括45个特征关键点,左嘴角包括48个特征关键点,右嘴角包括54个特征关键点。

可选的,可以利用sift(scale-invariantfeaturetransform,尺度不变特征转换)算法提取第一直播图像序列和所述第二直播图像序列中的至少一者中人脸区域;其中,sift算法是一种机器视觉的算法用来侦测与描述影像中的局部性特征,它在空间尺度中寻找极值点,并提取出其位置、尺度、旋转不变数。

可选的,还可以通过其他方法提取人脸区域中的特征关键点,如选择susan算子用于提取局部区域的边缘和角点特征,根据susan算子的特性,它既可用来检测边缘,又能用来提取角点,适合进行人脸眼部和嘴巴等特征的提取,尤其是对眼角点和嘴角点的自动定位。

当然,在其他实施例中,还可以通过神经网络模型对大量的人脸图像进行学习,自动提取出人脸区域的特征关键点。

s2103、根据所述特征关键点得到对应的图像序列中主播人物的人脸姿态。

人脸姿态估计主要是获得脸部朝向的角度信息。一般可以用旋转矩阵、旋转向量、四元数或欧拉角表示(这四个量也可以互相转换)。在本实施例中,以采用欧拉角对人脸姿态进行估计进行说明。

在一实施例中,人脸姿态可以通过以下方式实现:

1)首先定义一个具有n个关键点的3d脸部模型,n可以根据实际准确度进行定义,例如,定义6个关键点的3d脸部模型(左眼角,右眼角,鼻尖,左嘴角,右嘴角,下颌);2)采用人脸检测以及面部关键点检测得到上述3d脸部对应的2d人脸关键点;

3)采用opencv的solvepnp函数解出旋转向量;

4)将旋转向量转换为欧拉角。

基于opencv的solvepnp函数解出旋转向量,利用旋转向量转换为欧拉角是常规的人脸姿态检测方法,具体操作方法相关领域技术人员能够知晓,在此不详细叙述。

在本申请另一实施例中,还可以利用sift方式对序列图像进行关键点检测和特征匹配,得到主播终端或接入终端拍摄对应图像序列时的位姿信息,进一步根据主播终端或接入终端拍摄对应图像序列时的位姿信息得到图像序列中主播人物的人脸姿态。

其中,主播终端或接入终端拍摄对应图像序列时的位姿信息可以通过以下方式得到:

(一)利用sift算法提取关键点:

其中,sift算法提取关键点可以分为四个步骤:

(1)首先利用高斯差分(dog)以及影像金字塔找出尺度空间中的极值点;

(2)求亚像素精度的极值点。由于dog算子会产生边缘响应,还要去除低对比度的关键点和不稳定的边缘响应点;

(3)将剩余的极值点定义为关键点后,开启一窗口,利用窗口内的影像梯度和幅值定义出特征点的方向;

(4)按方向进行旋转,生成sift特征向量。sift向量去除了尺度变化、旋转等几何变形因素的影响,如归一化特征向量,进一步减弱光照变化的影响。

(二)对关键点特征匹配

在本实施例中,采用最近邻和次近邻的距离比例作为判断准则。最近邻特征点指与样本特征点欧式距离最短的特征点,次近邻特征点是样本特征点欧式距离第二小的特征点。

计算欧式距离最近点与次近点的距离比值与设定阈值进行比较,判断sift特征点对的相似程度,若比例小于设定阈值则sift特征点对匹配成功,反之,则该sift特征点对匹配失败,得到最终匹配点对集合。

(三)利用投影矩阵,结合最终匹配点对集合计算出主播终端或接入终端拍摄序列图像时的位姿信息。

其中,位姿信息包括位置和姿态。位置可以用基于相机坐标系下的位置坐标来表示,姿态可以用基于相机坐标系下的朝向信息来表示。

以此类推,执行上述步骤,得到主播终端或接入终端拍摄序列图像上的每一帧图像的位姿信息,位姿信息包括主播终端或接入终端拍摄一帧图像时的位置和姿势,也可以理解为相机位于相机坐标系内的坐标与旋转角度。

进一步的,根据主播终端或接入终端拍摄序列图像上的每一帧图像的位姿信息反推得到对应的图像序列中主播人物的人脸姿态。

s2104、根据所述人脸姿态确定所述直播视频流中的主播人物的人脸朝向。

其中,人脸姿态包括直播视频流中主播人物的脸部朝向的角度信息。在本实施例中,人脸姿态包括三个欧拉角(pitch,yaw,roll)表示,其中,pitch为俯仰角,表示物体绕x轴旋转,yaw为偏航角,表示物体绕y轴旋转,roll为翻滚角,表示物体绕z轴旋转。

可选的,将上述三个欧拉角中的其中一者作为主播人物的人脸朝向,如将偏航角作为主播人物的人脸朝向度,还可以是将上述三个欧拉角其中两个进行综合计算后的结果作为主播人物的人脸朝向,再可以是将上述三个欧拉角进行综合计算后的结果作为主播人物的人脸朝向。

在一实施例中,步骤s230中的对所述直播视频流进行翻转处理得到翻转直播视频流,可以包括以下步骤:

s2301、在预设时间段内检测到所述直播视频流中的主播人物开始做出指定动作时,在所述直播视频流对应的视频图像上插入翻转开始标识,得到翻转开始位置。

预设时间段可以为连麦主播需要完成指定互动任务、系统预设的时间段,也可以是主麦主播或连麦主播自行设置的时间段。该指定动作可以根据连麦主播需要完成的互动动作来确定,可以是主麦主播或连麦主播做出的头部偏转动作,或握手动作等。在本实施例中,该指定动作为触发视频流发生偏转处理的指定动作。

在预设时间段内检测到连麦主播对应的连麦直播视频流中连麦主播开始做出指定动作时,在连麦直播视频流中出现在指定动作的视频图像中插入翻转开始标识,并将该帧插入翻转开始标识的视频图像所在的位置作为翻转开始位置。

s2302、当检测到所述直播视频流中的主播人物结束做出指定动作时,在所述直播视频流对应的视频图像上插入翻转结束标识,得到翻转结束位置。

进一步的,若检测到直播视频流中的主播人物结束做出指定动作,如主播人物之前一直维持向右前方伸出手的动作,若此时检测到主播人物不再做出向右前方伸出手的动作,则说明主播人物结束做出指定动作,则检测到主播人物结束做出指定动作的第一帧或者上一帧(维持指定动作的最后一帧),在该帧视频图像上插入翻转结束标识,并将该帧插入翻转结束标识的视频图像所在的位置作为翻转结束位置。

s2303、对翻转开始位置和翻转结束位置之间的直播视频流中的主播人物进行翻转处理。

在本实施例中,开始翻转视频图像和结束翻转视频图像之间的视频图像为主播用户维持做出朝向错误的指定动作的连续多帧视频图像,则将这连续多帧视频图像中的主播人物进行翻转处理,如水平镜像翻转处理,并将翻转处理后的视频图像跟随直播视频流进行传输。

以上示例仅用于辅助阐述本公开技术方案,其涉及的图示内容及具体流程不构成对本公开技术方案的使用场景的限定。

下面对基于连麦直播的直播画面处理装置的相关实施例进行详细阐述。

图4是本申请实施例提供的一种基于连麦直播的直播画面处理装置的结构示意图,该基于连麦直播的直播画面处理装置可以执行于主播终端或服务器端,下面以服务器端为例进行说明。

具体的,如图4所示,该基于连麦直播的直播画面处理装置200包括:人脸朝向确定模块210、偏差角度计算模块220和直播视频合成模块230。

其中,人脸朝向确定模块210,用于获取进行连麦直播的至少两路直播视频流,对至少一路所述直播视频流进行人脸朝向识别,确定所述直播视频流中的主播人物的人脸朝向;

偏差角度计算模块220,用于计算所述人脸朝向与预设指示朝向的偏差角度;

直播视频合成模块230,用于在所述偏差角度达到预设角度阈值时,对所述直播视频流进行翻转处理得到翻转直播视频流,利用所述翻转直播视频流合成得到连麦直播视频流。

本实施例提供的基于连麦直播的直播画面处理装置,通过人脸朝向确定模块210获取进行连麦直播的至少两路直播视频流,对至少一路直播视频流进行人脸朝向识别,确定直播视频流中的主播人物的人脸朝向,偏差角度计算模块220计算人脸朝向与预设指示朝向之间的偏差角度;直播视频合成模块230在偏差角度达到预设角度阈值时,对直播视频流进行翻转处理得到翻转直播视频流,利用翻转直播视频流合成得到连麦直播视频流,以使得在主麦主播或连麦主播做出的动作不符合预设指示朝向时,快速实现直播视频流中相关画面的翻转处理,避免了主麦主播或连麦主播做出错误朝向的动作影响直播互动效果,提高连麦直播中主播之间互动的成功率,提高直播间的互动效果。

在一种可能的实现方式中,人脸朝向确定模块210包括:图像序列获取单元、关键点提取单元、人脸姿态得到单元和人脸朝向确定单元;

其中,图像序列获取单元,用于从主播终端获取主麦主播所在的第一直播图像序列,从接入终端获取连麦主播的第二直播图像序列;关键点提取单元,用于提取所述第一直播图像序列和所述第二直播图像序列中的至少一者中人脸区域的特征关键点;人脸姿态得到单元,用于根据所述特征关键点对所述直播视频流进行人脸朝向识别,得到对应的图像序列中主播人物的人脸姿态;人脸朝向确定单元,用于基于所述人脸姿态确定所述直播视频流中的主播人物的人脸朝向。

在一种可能的实现方式中,偏差角度计算模块220包括:偏转角度估计单元和偏差角度得到单元;

其中,偏转角度估计单元,用于根据所述人脸朝向估计所述主播人物的头部偏转角度;偏差角度得到单元,用于计算所述头部偏转角度与预设指示朝向对应的标准角度的差值,得到所述人脸朝向与预设指示朝向之间的偏差角度。

在一种可能的实现方式中,直播视频合成模块230包括:翻转视频流得到单元,用于在所述偏差角度达到预设角度阈值、且持续时间达到预设时间阈值时,根据所述偏差角度对所述直播视频流中的主播人物进行水平翻转处理得到翻转直播视频流。

在一种可能的实现方式中,直播视频合成模块230包括:翻转开始位置得到单元、翻转结束位置得到单元和图像翻转处理单元;

其中,开始翻转图像得到单元,用于在预设时间段内检测到所述直播视频流中的主播人物开始做出指定动作时,在所述直播视频流对应的视频图像上插入翻转开始标识,得到翻转开始位置;结束翻转图像得到单元,用于当检测到所述直播视频流中的主播人物结束做出指定动作时,在所述直播视频流对应的视频图像上插入翻转结束标识,得到翻转结束位置;图像翻转处理单元,用于对翻转开始位置和翻转结束位置之间的直播视频流中的主播人物进行翻转处理。

在一种可能的实现方式中,直播视频合成模块230包括:合成模板获取单元和连麦视频流得到单元;

其中,合成模板获取单元,用于获取预先配置的连麦直播画面的合成模板;连麦视频流得到单元,用于根据所述合成模板将所述翻转直播视频流与其他参与连麦的直播视频流进行合成,得到连麦直播视频流。

在一种可能的实现方式中,翻转直播视频流为连麦主播所在的直播视频流;

连麦视频流得到单元,用于按照所述合成模板,将主麦主播所对应的直播视频流设置在所述合成模块的左侧,将所述翻转直播视频流设置在所述合成模板的右侧进行合成,得到连麦直播视频流。

本实施例的基于连麦直播的直播画面处理装置可执行本申请前述实施例所示的基于连麦直播的直播画面处理方法,其实现原理相类似,此处不再赘述。

本申请实施例中提供了一种电子设备,该电子设备包括:存储器和处理器;至少一个程序,存储于存储器中,用于被处理器执行时,与现有技术相比可实现:提高连麦直播过程中的直播互动效果。

在一个可选实施例中提供了一种电子设备,如图5所示,图5所示的电子设备4000包括:处理器4001和存储器4003。其中,处理器4001和存储器4003相连,如通过总线4002相连。可选地,电子设备4000还可以包括收发器4004,收发器4004可以用于该电子设备与其他电子设备之间的数据交互,如数据的发送和/或数据的接收等。需要说明的是,实际应用中收发器4004不限于一个,该电子设备4000的结构并不构成对本申请实施例的限定。

处理器4001可以是cpu(centralprocessingunit,中央处理器),通用处理器,dsp(digitalsignalprocessor,数据信号处理器),asic(applicationspecificintegratedcircuit,专用集成电路),fpga(fieldprogrammablegatearray,现场可编程门阵列)或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器4001也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,dsp和微处理器的组合等。

总线4002可包括一通路,在上述组件之间传送信息。总线4002可以是pci(peripheralcomponentinterconnect,外设部件互连标准)总线或eisa(extendedindustrystandardarchitecture,扩展工业标准结构)总线等。总线4002可以分为地址总线、数据总线、控制总线等。为便于表示,图5中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。

存储器4003可以是rom(readonlymemory,只读存储器)或可存储静态信息和指令的其他类型的静态存储设备,ram(randomaccessmemory,随机存取存储器)或者可存储信息和指令的其他类型的动态存储设备,也可以是eeprom(electricallyerasableprogrammablereadonlymemory,电可擦可编程只读存储器)、cd-rom(compactdiscreadonlymemory,只读光盘)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。

存储器4003用于存储执行本申请方案的应用程序代码,并由处理器4001来控制执行。处理器4001用于执行存储器4003中存储的应用程序代码,以实现前述方法实施例所示的内容。

其中,电子设备包括但不限于:移动电话、笔记本电脑、数字广播接收器、pda(个人数字助理)、pad(平板电脑)、pmp(便携式多媒体播放器)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字tv、台式计算机等等的固定终端。图5示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。

本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,当其在计算机上运行时,使得计算机可以执行前述方法实施例中相应内容。与现有技术相比,本申请实施例实现了在主麦主播或连麦主播做出的动作不符合预设指示朝向时,快速实现直播视频流中相关画面的翻转处理,避免了主麦主播或连麦主播做出错误朝向的动作影响互动性,从而提高连麦直播过程中的直播互动的视觉效果。

本申请实施例提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备,如电子设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行时实现如下情况:

获取进行连麦直播的至少两路直播视频流,对至少一路所述直播视频流进行人脸朝向识别,确定所述直播视频流中的主播人物的人脸朝向;

计算所述人脸朝向与预设指示朝向之间的偏差角度;

在所述偏差角度达到预设角度阈值时,对所述直播视频流进行翻转处理得到翻转直播视频流,利用翻转直播视频流合成得到连麦直播视频流。

需要说明的是,本公开上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、rf(射频)等等,或者上述的任意合适的组合。

上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。

上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备执行上述实施例所示的方法。

可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作的计算机程序代码,上述程序设计语言包括面向对象的程序设计语言—诸如java、smalltalk、c++,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(lan)或广域网(wan)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。

附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

描述于本公开实施例中所涉及到的模块可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,模块的名称在某种情况下并不构成对该模块本身的限定,例如,人脸朝向确定模块还可以被描述为“确定人脸朝向的模块”。

应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。

以上所述仅是本申请的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。

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