CN115278364B - 一种视频流合成方法及装置 - Google Patents
一种视频流合成方法及装置 Download PDFInfo
- Publication number
- CN115278364B CN115278364B CN202210910457.0A CN202210910457A CN115278364B CN 115278364 B CN115278364 B CN 115278364B CN 202210910457 A CN202210910457 A CN 202210910457A CN 115278364 B CN115278364 B CN 115278364B
- Authority
- CN
- China
- Prior art keywords
- video stream
- parameters
- scene
- virtual
- virtual scene
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000001308 synthesis method Methods 0.000 title claims abstract description 9
- 238000000034 method Methods 0.000 claims abstract description 79
- 230000002194 synthesizing effect Effects 0.000 claims abstract description 44
- 238000012545 processing Methods 0.000 claims description 21
- 238000012937 correction Methods 0.000 claims description 14
- 238000012805 post-processing Methods 0.000 claims description 5
- 239000002131 composite material Substances 0.000 abstract description 4
- 230000015654 memory Effects 0.000 description 17
- 238000010586 diagram Methods 0.000 description 12
- 230000006870 function Effects 0.000 description 9
- 238000003860 storage Methods 0.000 description 7
- 238000004590 computer program Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 5
- 230000015572 biosynthetic process Effects 0.000 description 5
- 238000003786 synthesis reaction Methods 0.000 description 5
- 238000011156 evaluation Methods 0.000 description 4
- 230000003993 interaction Effects 0.000 description 4
- 238000006243 chemical reaction Methods 0.000 description 3
- 239000000203 mixture Substances 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 239000012634 fragment Substances 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000004091 panning Methods 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- OKTJSMMVPCPJKN-UHFFFAOYSA-N Carbon Chemical compound [C] OKTJSMMVPCPJKN-UHFFFAOYSA-N 0.000 description 1
- 108010001267 Protein Subunits Proteins 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 229910021389 graphene Inorganic materials 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
- 235000011888 snacks Nutrition 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/21—Server components or server architectures
- H04N21/218—Source of audio or video content, e.g. local disk arrays
- H04N21/2187—Live feed
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/222—Studio circuitry; Studio devices; Studio equipment
- H04N5/262—Studio circuits, e.g. for mixing, switching-over, change of character of image, other special effects ; Cameras specially adapted for the electronic generation of special effects
- H04N5/265—Mixing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/222—Studio circuitry; Studio devices; Studio equipment
- H04N5/262—Studio circuits, e.g. for mixing, switching-over, change of character of image, other special effects ; Cameras specially adapted for the electronic generation of special effects
- H04N5/272—Means for inserting a foreground image in a background image, i.e. inlay, outlay
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本说明书提供一种视频流合成方法及装置,包括:服务端接收输入视频流、初始参数,并生成虚拟场景;依据所述初始参数将所述输入视频流和所述虚拟场景进行合成,得到第一视频流;接收并依据自定义参数,采用虚拟摄像机对所述第一视频流进行调整,得到结果视频流;并将所述结果视频流发送至客户端;客户端接收并播放服务端发送的所述结果视频流。基于上述方法能够解决现有方法中存在的合成视频流无法满足用户多样化需求的问题,得到具有较高交互性的合成视频流,提升用户的观看体验。
Description
技术领域
本说明书属于视频处理领域,尤其涉及一种视频流合成方法及装置。
背景技术
视频流合成技术在虚拟直播、视频后期处理等领域有广泛应用。现有技术中,通常基于视频工作站进行视频流合成,但是无法满足用户的多样化需求,用户使用体验差。
针对上述技术问题,目前尚未提出有效的解决方案。
发明内容
本说明书提供了一种视频流合成方法及装置,能够解决现有方法中存在的合成视频流无法满足用户的多样化需求的问题,实现合成视频流与用户间的交互操作。
本说明书实施例的目的是提供一种视频流合成方法,该方法应用于服务端,包括:
接收输入视频流、初始参数,并生成虚拟场景;
依据所述初始参数将所述输入视频流和所述虚拟场景进行合成,得到第一视频流;
接收并依据自定义参数,采用虚拟摄像机对所述第一视频流进行调整,得到结果视频流;并将所述结果视频流发送至客户端。
进一步地,所述方法的另一个实施例中,在所述接收并依据自定义参数,采用虚拟摄像机对所述第一视频流进行调整,得到结果视频流之前,所述方法还包括:将所述第一视频流发送至客户端。
进一步地,所述方法的另一个实施例中,所述自定义参数,包括:摄像机参数、前景参数、虚拟场景参数。
进一步地,所述方法的另一个实施例中,所述依据所述初始参数将所述输入视频流和所述虚拟场景进行合成,得到第一视频流,包括:
对所述输入视频流进行去背景处理,得到目标对象;
将所述目标对象和所述虚拟场景依据所述初始参数进行合成,得到第一视频流。
进一步地,所述方法的另一个实施例中,所述接收并依据自定义参数,采用虚拟摄像机对所述第一视频流进行调整,得到结果视频流,包括:
接收自定义参数,并根据自定义参数对虚拟摄像机的运行参数进行配置;
利用配置后的虚拟摄像机处理所述第一视频流,得到结果视频流。
进一步地,所述方法的另一个实施例中,所述输入视频流包括在虚拟直播中待展示给观众的视频流。
本说明书实施例提供一种视频流合成方法,该方法应用于客户端,包括:
将输入视频流、初始参数发送至服务端;其中,所述服务端用于依据所述初始参数将所述输入视频流和虚拟场景进行合成,得到第一视频流;
接收用户输入的自定义参数,并将所述自定义参数发送至服务端;其中,所述服务端用于接收并依据自定义参数,采用虚拟摄像机对所述第一视频流进行调整,得到结果视频流;
接收并播放服务端发送的所述结果视频流。
进一步地,所述方法的另一个实施例中,在所述接收用户输入的自定义参数,并将所述自定义参数发送至服务端之前,所述方法还包括:接收并播放所述第一视频流。
进一步地,所述方法的另一个实施例中,在所述接收并播放服务端发送的所述结果视频流之后,所述方法还包括:
检测是否接收到校正参数;
在确定没有接收到校正参数的情况下,将所述结果视频流输入至虚拟摄像头中,以进行后期处理和直播推流。
另一方面,本申请提供了一种视频流合成装置,包括:
生成模块,用于接收输入视频流、初始参数,并生成虚拟场景;
合成模块,用于依据所述初始参数将所述输入视频流和所述虚拟场景进行合成,得到第一视频流;
调整模块,用于接收并依据自定义参数,采用虚拟摄像机对所述第一视频流进行调整,得到结果视频流;并将所述结果视频流发送至客户端。
本说明书提供的一种视频流合成方法及装置,可以应用于客户端和服务端,客户端接收输入视频流以及用户输入的初始参数;并将所述输入视频流、所述初始参数发送至服务端;服务端接收输入视频流、初始参数,并生成虚拟场景;依据所述初始参数将所述输入视频流和所述虚拟场景进行合成,得到第一视频流;客户端接收用户输入的自定义参数,并将所述自定义参数发送至服务端;服务端接收并依据自定义参数,采用虚拟摄像机对所述第一视频流进行调整,得到结果视频流;并将所述结果视频流发送至客户端;客户端接收并播放服务端发送的所述结果视频流。
并且,在依据所述初始参数将所述输入视频流和所述虚拟场景进行合成,得到第一视频流时,对所述输入视频流进行去背景处理,得到目标对象;将所述目标对象和所述虚拟场景依据所述初始参数进行合成,得到第一视频流。
进一步,在接收并依据自定义参数,采用虚拟摄像机对所述第一视频流进行调整,得到结果视频流时,接收自定义参数,并根据自定义参数对虚拟摄像机的运行参数进行配置;利用配置后的虚拟摄像机处理所述第一视频流,得到结果视频流。
附图说明
为了更清楚地说明本说明书实施例,下面将对实施例中所需要使用的附图作简单地介绍,下面描述中的附图仅仅是本说明书中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本说明书提供的一种视频流合成方法应用于服务端时一个实施例的流程示意图;
图2是本说明书提供的一种视频流合成方法应用于客户端时一个实施例的流程示意图;
图3是本说明书提供的一种第一视频流生成过程示意图;
图4是本说明书提供的一种基于服务端的视频流合成方法示意图;
图5是本说明是提供的一种基于客户端的视频流合成方法示意图;
图6是本说明书提供的一种视频流合成装置一个实施例的模块结构示意图;
图7是本说明书提供的一种服务器的结构组成示意图。
具体实施方式
为了使本技术领域的人员更好地理解本说明书中的技术方案,下面将结合本说明书实施例中的附图,对本说明书实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本说明书保护的范围。
考虑到现有的视频流合成方法通常基于视频工作站进行,该方法制作成本高。
进一步,还考虑到基于现有技术得到的合成后视频流通常只是基于固定角度、固定位置进行播放,用户无法根据自己的需要对视频流进行角度调整、位置调整等操作,因此无法实现和用户的交互操作,难以满足用户的多样化需求,用户的使用体验较差。
针对现有方法存在的上述问题以及产生上述问题的具体原因,本申请考虑引入用户可操作的视频流合成方法,以实现对视频流的调整,满足用户的多样化需求。
基于上述思路,本说明书提出一种视频流合成方法。该方法应用于服务端,首先,接收输入视频流、初始参数,并生成虚拟场景;然后,依据所述初始参数将所述输入视频流和所述虚拟场景进行合成,得到第一视频流;最后,接收并依据自定义参数,采用虚拟摄像机对所述第一视频流进行调整,得到结果视频流;并将所述结果视频流发送至客户端。所述服务端可以是一种具有视频流处理功能的服务器。具体的,所述服务器可以是部署于云端的云端服务器。
上述方法应用于客户端,首先,接收输入视频流以及用户输入的初始参数;并将所述输入视频流、所述初始参数发送至服务端;然后,接收用户输入的自定义参数,并将所述自定义参数发送至服务端;最后,接收并播放服务端发送的所述结果视频流。所述客户端可以是一种具有数据采集、数据传输等功能的终端设备。具体的,所述终端设备可以是台式电脑、平板电脑、笔记本电脑、智能手机等。或者,上述终端设备也可以为能够运行于上述电子设备中的软件应用。例如,可以是在手机上运行的某APP等。
参阅图1所示,本说明书实施例提供了一种视频流合成方法、该方法应用于服务端,具体实施时,可以包括以下内容。
S101:接收输入视频流、初始参数,并生成虚拟场景。
在一些实施例中,所述视频流,是一种一边处理、一边传输的视频;常规的视频在进行视频处理时,是作为一个整体被全部处理完毕,再作为一个整体被发送出去,这种方式效率低、速度慢;视频流在进行视频处理时,先按照播放顺序分解为多个小片段,逐一对小片段进行处理并发送给用户,最终产生连续的视频流,基于上述视频处理方式可以使用户在极短的时间内接收到处理后视频,并且在原视频流部分受损的情况下,计算机可以对原视频流中完好的部分进行单独处理以发送给用户,提升了用户的观看体验。
在一些实施例中,上述虚拟场景具体可以理解为一种与目标对象相匹配的,基于虚拟引擎和相关算法所生成的视频场景。
具体的,上述虚拟场景可以包括多种不同场景类型的视频场景。其中,所述场景类型具体可以包括:购物场景、工作场景、娱乐场景、天气场景等等。对于上述所列举的每个场景类型进一步还可以包括对应的多个子场景类型。例如,上述天气场景进一步可以包括:雨天场景、晴天场景、雪天场景等等。上述购物场景进一步可以包括:服装商品场景、零食商品场景、玩具商品场景等等。
在一些实施例中,具体实施前,服务端还可以通过对大量样本视频中的视频场景进行统计整理,筛选出使用频率较高的多个场景类型作为预设的场景类型;再利用虚拟引擎和相关算法,生成关于预设的场景类型的场景视频作为预设的虚拟场景,以构建预设的虚拟场景库。其中,上述预设的虚拟场景库中可以存储有多个预设的虚拟场景,且每一个预设的虚拟场景与一个虚拟场景标识相对应。
具体实施时,服务端可以接收用户通过客户端所采集的用户针对虚拟场景的场景类型的选择操作数据;并根据选择操作数据,确定出用户所选中的虚拟场景类型所对应的虚拟场景标识;进而可以根据虚拟场景标识,从预设的虚拟场景库中获取相匹配的预设的虚拟场景作为所述虚拟场景。
其中,所确定出的虚拟场景标识可以包括多个不同的虚拟场景标识。相应的,服务端可以从预设的虚拟场景库中获取相匹配的多个预设的虚拟场景进行组合,得到组合后的虚拟场景;再将组合后的虚拟场景作为所述虚拟场景。
具体的,例如,用户想制作用于推广雨衣的合成视频,在客户端中同时选中了雨天场景和服装商品场景。相应的,服务端可以先从预设的虚拟场景库获取预设的雨天虚拟场景和预设的服装商品虚拟场景;再将上述两种虚拟场景进行叠加,以得到符合用户要求的虚拟场景。
在一些实施例中,所述初始参数,具体可以包括:初始角度参数、初始位置参数、初始摄像头参数;具体的,摄像头参数可以包括:感光度参数、色温参数、焦距参数、光圈参数。
具体的,所述初始参数具体可以是用户通过客户端输入的参数,也可以是服务端提供的默认参数。其中,所述默认参数具体可以是服务端通过对大量视频数据进行分析、统计后所整理的符合大部分观众喜好的角度参数、位置参数和摄像头参数。
S102:依据所述初始参数将所述输入视频流和所述虚拟场景进行合成,得到第一视频流。
在一些实施例中,参阅图3所示,上述依据所述初始参数将所述输入视频流和所述虚拟场景进行合成,得到第一视频流,具体实施时,可以包括:
S1:对所述输入视频流进行去背景处理,得到目标对象;
S2:将所述目标对象和所述虚拟场景依据所述初始参数进行合成,得到第一视频流。
在一些实施例中,所述目标对象具体可以包括以下所列举的一种或多种:目标商品对象、目标人物对象、目标动物对象等。
具体的,例如,服务端可以通过与客户端交互,确定出输入视频流中用户需要保留的目标对象;再对输入视频流中的每一帧图像分别进行图像识别,以确定出每一帧图像中的目标对象;然后确定出每一帧图像中目标对象所在的目标区域,以及除目标对象以外的背景区域;再将每一帧图像中的背景区域分割出来,得到所需要的目标对象。
S103:接收并依据自定义参数,采用虚拟摄像机对所述第一视频流进行调整,得到结果视频流;并将所述结果视频流发送至客户端。
在一些实施例中,上述自定义参数,具体可以包括:摄像机参数、前景参数、虚拟场景参数;所述摄像机参数,具体可以包括:推拉摇移距离角度参数、镜头参数、声音参数;所述前景参数具体可以包括:抠像参数、图像变换参数、输入源声音参数;所述虚拟场景参数,具体可以包括:环境光照参数、场景物品交互参数。
上述自定义参数用于对虚拟摄像机的拍摄方式进行设置,以得到结果视频流。
在一些实施例中,上述在接收并依据自定义参数,采用虚拟摄像机对所述第一视频流进行调整,得到结果视频流之前,所述方法还包括:将所述第一视频流发送至客户端。
具体的,客户端可以先向用户展示出第一视频流,并接收用户针对所述第一视频流输入的自定义参数;再将该自定义参数发送给服务端。
此外,客户端还可以接收用户针对第一视频流输入的反馈评价,并将反馈评价发送给服务端。服务端在接收到上述反馈评价之后,可以根据反馈评价对初始参数进行修改,以得到能够满足用户喜好的参数作为自定义参数。
在一些实施例中,上述接收并依据自定义参数,采用虚拟摄像机对所述第一视频流进行调整,得到结果视频流,具体实施时,可以包括:
S1:接收自定义参数,并根据自定义参数对虚拟摄像机的运行参数进行配置;
S2:利用配置后的虚拟摄像机处理所述第一视频流,得到结果视频流。
在一些实施例中,上述虚拟摄像机,是一种位于服务端中的、基于三维引擎软件构建的虚拟场景拍摄装置,它可以依据用户配置的自定义参数,在虚拟场景中实现多角度、多位置的视频流拍摄。虚拟摄像机相比于真实摄像机,操作方法更简便,使用成本更低廉。
基于上述实施例,用户可以通过输入自定义参数来改变虚拟摄像机的拍摄方式,实现在虚拟场景中对第一视频流的调整(例如:角度调整、位置调整、亮度调整),以产生符合客户要求的结果视频流。
具体的,例如,所述输入视频流包括在虚拟直播中待展示给观众的视频流。即,可以应用本说明书提供的视频流合成方法来处理虚拟直播中待展示给观众的视频流,以使得观众可以获得更好的观赏体验。
直播用户使用客户端对待展示给观众的编码视频进行格式转换,得到格式转换后的视频;再根据相应的编码规则,对格式转换后的视频进行编码处理,得到符合要求的编码视频;所述编码规则具体可以为bridge编码。所述bridge编码是一种基于可靠数据协议的简单分组传输协议(RUDP)的编码方式。
接着,直播用户可以使用客户端确定虚拟场景类型,同时向服务端发送合成指令;其中,所述合成指令携带有编码视频和初始参数。
然后,服务端可以根据直播用户选中的虚拟场景类型,生成相应的虚拟场景;同时,先对编码视频进行解码处理,得到输入视频流;再响应合成指令,根据初始参数,将虚拟场景和输入视频流进行合成处理,得到第一合成视频(或称第一视频流)。进一步,服务端还可以获取直播用户针对第一合成视频的调整指令。其中,上述调整指令至少携带有直播用户的自定义参数。接着,可以响应调整指令,利用自定义参数对第一合成视频进行相应调整,得到第二合成视频(或称结果视频流)。进而可以向观众播放上述第二合成视频。
参阅图2所示,本说明书实施例提供了一种视频流合成方法,该方法应用于客户端,具体实施时,可以包括以下内容。
S201:将输入视频流、初始参数发送至服务端;其中,所述服务端用于依据所述初始参数将所述输入视频流和虚拟场景进行合成,得到第一视频流。
在一些实施例中,上述输入视频流可以是通过视频采集设备采集到的实时视频,也可以是已经采集好的视频文件。
S202:接收用户输入的自定义参数,并将所述自定义参数发送至服务端;其中,所述服务端用于接收并依据自定义参数,采用虚拟摄像机对所述第一视频流进行调整,得到结果视频流。
在一些实施例中,在所述接收用户输入的自定义参数,并将所述自定义参数发送至服务端之前,所述方法还包括:接收并播放所述第一视频流。
在一个具体的场景示例中,客户端可以在播放第一视频流的同时,生成输入页面,用户可以在观看第一视频流的同时,根据自己的需要,在上述输入页面的对应文本框中,输入多种自定义参数,以对第一视频流进行调整。或者,用户也可以在客户端所播放的第一视频流上,进行鼠标或手指拖拽动作,客户端捕获用户的拖拽动作路径并根据该路径计算出对应的推拉摇移距离角度参数,再发送给服务端,以对第一视频流进行调整。
基于上述实施例,用户可以在客户端观看到第一视频流,进而根据自己的需要,输入自定义参数对第一视频流进行调整。
S203:接收并播放服务端发送的所述结果视频流。
在一些实施例中,上述在接收并播放服务端发送的所述结果视频流之后,所述方法还包括:
S1:检测是否接收到校正参数;
S2:在确定没有接收到校正参数的情况下,将所述结果视频流输入至虚拟摄像头中,以进行后期处理和直播推流。
在一些实施例中,上述校正参数,具体可以包括:摄像机参数、前景参数、虚拟场景参数;所述摄像机参数,具体可以包括:推拉摇移距离角度参数、镜头参数、声音参数;所述前景参数具体可以包括:抠像参数、图像变换参数、输入源声音参数;所述虚拟场景参数,具体可以包括:环境光照参数、场景物品交互参数。
在一些实施例中,基于上述校正参数,可以对用户接收到的结果视频流进行校正调整,以满足用户多样化的需求。例如:用户输入校正参数,客户端接收到校正参数并将其发送给服务端;服务端接收校正参数,并依据校正参数重新配置虚拟摄像机,用重新配置的虚拟摄像机拍摄生成新的结果视频流,将新的结果视频流发送给客户端。
在一些实施例中,基于虚拟摄像头可以将结果视频流导入第三方直播平台进行直播推流。在另一些实施例中,基于虚拟摄像头还可以对结果视频流进行视频后期处理,例如,对结果视频流进行剪切合并、画面裁剪。在另一些实施例中,基于虚拟摄像头还可以对结果视频流进行录制并保存。
具体的,例如,所述客户端可以是一个运行在手机上的APP,用户可以在该手机APP内观看结果视频流;进一步,可以将结果视频流导入一个虚拟摄像头中并打开一个第三方直播平台,虚拟摄像头能够完成和第三方直播平台的交互,第三方直播平台能够获取到虚拟摄像头中的结果视频流并在其直播平台内进行直播以向观众展示结果视频流;所述第三方直播平台具体可以包括:电商直播平台、社交直播平台。又例如,也可以将结果视频流同时导入多个虚拟摄像头中,相应的,打开多个第三方直播平台,每个第三方直播平台都从不同的虚拟摄像头中获取结果视频流并在其直播平台内进行直播,实现了结果视频流的多路输出。
在一个具体的场景示例中,参阅图4所示,图4是本说明书提供的一种基于服务端的视频流合成方法示意图,首先服务端启动虚拟场景,然后检测用户是否通过客户端输入视频流,在用户输入视频流的情况下,将输入视频流中的目标对象(例如:目标人物对象、目标商品对象、目标动物对象等)通过逐帧去背景的方式提取出来,然后再依据初始参数将输入视频流和虚拟场景进行合成,得到第一视频流;相应的,也可以依据自定义参数将第一视频流和虚拟场景进行合成并调整,得到结果视频流。参阅图5所示,图5是本说明是提供的一种基于客户端的视频流合成方法示意图,图中的云端可以是部署于云端的服务端设备,首先客户端接收云端返回的第一视频流,并判断是否需要调整;在需要调整的情况下,用户可以通过客户端输入自定义参数,并发送相应的控制指令(例如:自定义参数)给云端;云端返回经过调整的结果视频流;当用户认为结果视频流不再需要调整的情况下,可以使用结果视频流(例如:将结果视频流输入进虚拟摄像头以用于后续直播推流)。
虽然本说明书提供了如实施例或流程图所述的方法操作步骤,但基于常规或者无创造性的手段可以包括更多或者更少的操作步骤。实施例中列举的步骤顺序仅仅为众多步骤执行顺序中的一种方式,不代表唯一的执行顺序。在实际中的装置或客户端产品执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的环境,甚至为分布式数据处理环境)。术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、产品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、产品或者设备所固有的要素。在没有更多限制的情况下,并不排除在包括所述要素的过程、方法、产品或者设备中还存在另外的相同或等同要素。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。
基于上述一种视频流合成方法,本说明书一个或多个实施例还提供一种视频流合成装置。所述的装置可以包括使用了本说明书实施例所述方法的系统(包括分布式系统)、软件(应用)、模块、组件、服务器、客户端等并结合必要的实施硬件的装置。基于同一创新构思,本说明书实施例提供的一个或多个实施例中的装置如下面的实施例所述。由于装置解决问题的实现方案与方法相似,因此本说明书实施例具体的装置的实施可以参见前述方法的实施,重复之处不再赘述。以下所使用的,术语“单元”或者“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
具体地,图6是本说明书提供的一种视频流合成装置的一个实施例的模块结构示意图,如图6所示,本说明书提供的一种视频流合成装置可以包括:生成模块601、合成模块602、调整模块603。
生成模块601,用于接收输入视频流、初始参数,并生成虚拟场景;
合成模块602,用于依据所述初始参数将所述输入视频流和所述虚拟场景进行合成,得到第一视频流;
调整模块603,用于接收并依据自定义参数,采用虚拟摄像机对所述第一视频流进行调整,得到结果视频流;并将所述结果视频流发送至客户端。
需要说明的,上述所述的装置根据方法实施例的描述还可以包括其他的实施方式,具体的实现方式可以参照相关方法实施例的描述,在此不作一一赘述。
本说明书还提供一种服务器,包括处理器及用于存储处理器可执行指令的存储器,所述处理器执行所述指令时可以实现上述任意一项方法实施例。例如,所述指令被所述处理器执行时实现包括以下步骤:接收输入视频流、初始参数,并生成虚拟场景;依据所述初始参数将所述输入视频流和所述虚拟场景进行合成,得到第一视频流;接收并依据自定义参数,采用虚拟摄像机对所述第一视频流进行调整,得到结果视频流;并将所述结果视频流发送至客户端。
需要说明的,上述所述的服务器根据方法或装置实施例的描述还可以包括其他的实施方式。具体的实现方式可以参照相关方法实施例的描述,在此不作一一赘述。
具体地,图7是本说明书提供的一种服务器的一个实施例的硬件结构框图。如图7所示,服务器10可以包括一个或多个(图中仅示出一个)处理器100(处理器100可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)、用于存储数据的存储器200、以及用于通信功能的传输模块300。本领域普通技术人员可以理解,图7所示的结构仅为示意,其并不对上述电子装置的结构造成限定。例如,服务器10还可包括比图7中所示更多或者更少的组件,例如还可以包括其他的处理硬件,如数据库或多级缓存、GPU,或者具有与图7所示不同的配置。
存储器200可用于存储应用软件的软件程序以及模块,如本说明书实施例中的视频流合成方法对应的程序指令/模块,处理器100通过运行存储在存储器200内的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器200可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器200可进一步包括相对于处理器100远程设置的存储器,这些远程存储器可以通过网络连接至计算机终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输模块300用于经由一个网络接收或者发送数据。上述的网络具体实例可包括计算机终端的通信供应商提供的无线网络。在一个实施例中,传输模块300包括一个网络适配器(Network Interface Controller,NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输模块300可以为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。
本说明书还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序指令,在所述计算机程序指令被执行时实现:接收输入视频流、初始参数,并生成虚拟场景;依据所述初始参数将所述输入视频流和所述虚拟场景进行合成,得到第一视频流;接收并依据自定义参数,采用虚拟摄像机对所述第一视频流进行调整,得到结果视频流;并将所述结果视频流发送至客户端。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
本说明书提供的上述实施例所述的方法或装置可以通过计算机程序实现业务逻辑并记录在存储介质上,所述的存储介质可以计算机读取并执行,实现本说明书实施例所描述方案的效果。所述存储介质可以包括用于存储信息的物理装置,通常是将信息数字化后再以利用电、磁或者光学等方式的媒体加以存储。所述存储介质可以包括:利用电能方式存储信息的装置如,各式存储器,如RAM、ROM等;利用磁能方式存储信息的装置如,硬盘、软盘、磁带、磁芯存储器、磁泡存储器、U盘;利用光学方式存储信息的装置如,CD或DVD。当然,还有其他方式的可读存储介质,例如量子存储器、石墨烯存储器等等。
本说明书提供的上述视频流合成方法或装置实施例可以在计算机中由处理器执行相应的程序指令来实现,如基于x86/x64处理器及移动端ARM处理器的多媒体指令实现,或基于GPU的通用并行计算实现,以及基于量子计算机的处理逻辑实现等。
需要说明的是说明书上述所述的装置、设备根据相关方法实施例的描述还可以包括其他的实施方式,具体的实现方式可以参照对应方法实施例的描述,在此不作一一赘述。
本申请中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于硬件+程序类实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
为了描述的方便,描述以上装置时以功能分为各种模块分别描述。当然,在实施本说明书一个或多个时可以把部分模块的功能在同一个或多个软件和/或硬件中实现,也可以将实现同一功能的模块由多个子模块或子单元的组合实现等。
本发明是参照根据本发明实施例的方法、装置、设备的流程图和/或方框图来描述的。应理解可由计算机程序指令实现,可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现指定的功能的装置。这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
本领域技术人员应明白,本说明书一个或多个实施例可提供为方法、系统或计算机程序产品。因此,本说明书一个或多个实施例可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。
虽然通过实施例描绘了本说明书,本领域普通技术人员知道,本说明书有许多变形和变化而不脱离本说明书的精神,希望所附的权利要求包括这些变形和变化而不脱离本说明书的精神。
Claims (9)
1.一种视频流合成方法,其特征在于,所述方法应用于服务端,包括:
接收输入视频流、初始参数,并生成虚拟场景;其中,生成虚拟场景包括:接收用户针对虚拟场景的场景类型的选择操作数据;根据选择操作数据,确定出用户所选中的虚拟场景类型所对应的虚拟场景标识;根据虚拟场景标识,从预设的虚拟场景库中获取相匹配的多个预设的虚拟场景进行组合,得到组合后的虚拟场景;将组合后的虚拟场景作为所述虚拟场景;所述虚拟场景的场景类型包括以下至少之一:购物场景、工作场景、娱乐场景、天气场景;
依据所述初始参数将所述输入视频流和所述虚拟场景进行合成,得到第一视频流;
接收并依据自定义参数,采用虚拟摄像机对所述第一视频流进行调整,得到结果视频流;所述自定义参数,包括:摄像机参数、前景参数、虚拟场景参数;并将所述结果视频流发送至客户端;所述客户端用于将所述结果视频流同时导入多个虚拟摄像头中进行直播推流。
2.根据权利要求1所述的方法,其特征在于,在接收并依据自定义参数,采用虚拟摄像机对所述第一视频流进行调整,得到结果视频流之前,所述方法还包括:将所述第一视频流发送至客户端。
3.根据权利要求1所述的方法,其特征在于,依据所述初始参数将所述输入视频流和所述虚拟场景进行合成,得到第一视频流,包括:
对所述输入视频流进行去背景处理,得到目标对象;
将所述目标对象和所述虚拟场景依据所述初始参数进行合成,得到第一视频流。
4.根据权利要求1所述的方法,其特征在于,接收并依据自定义参数,采用虚拟摄像机对所述第一视频流进行调整,得到结果视频流,包括:
接收自定义参数,并根据自定义参数对虚拟摄像机的运行参数进行配置;
利用配置后的虚拟摄像机处理所述第一视频流,得到结果视频流。
5.根据权利要求1所述的方法,其特征在于,所述输入视频流包括在虚拟直播中待展示给观众的视频流。
6.一种视频流合成方法,其特征在于,所述方法应用于客户端,包括:
将输入视频流、初始参数发送至服务端;其中,服务端用于依据所述初始参数将所述输入视频流和虚拟场景进行合成,得到第一视频流;所述虚拟场景按照以下方式生成:接收用户针对虚拟场景的场景类型的选择操作数据;根据选择操作数据,确定出用户所选中的虚拟场景类型所对应的虚拟场景标识;根据虚拟场景标识,从预设的虚拟场景库中获取相匹配的多个预设的虚拟场景进行组合,得到组合后的虚拟场景;将组合后的虚拟场景作为所述虚拟场景;所述虚拟场景的场景类型包括以下至少之一:购物场景、工作场景、娱乐场景、天气场景;
接收用户输入的自定义参数,并将所述自定义参数发送至服务端;其中,所述服务端用于接收并依据自定义参数,采用虚拟摄像机对所述第一视频流进行调整,得到结果视频流;所述自定义参数,包括:摄像机参数、前景参数、虚拟场景参数;
接收并播放服务端发送的所述结果视频流;
所述方法还包括:将所述结果视频流同时导入多个虚拟摄像头中进行直播推流。
7.根据权利要求6所述的方法,其特征在于,在接收用户输入的自定义参数,并将所述自定义参数发送至服务端之前,所述方法还包括:接收并播放所述第一视频流。
8.根据权利要求6所述的方法,其特征在于,在接收并播放服务端发送的所述结果视频流之后,所述方法还包括:
检测是否接收到校正参数;
在确定没有接收到校正参数的情况下,将所述结果视频流输入至虚拟摄像头中,以进行后期处理和直播推流。
9.一种视频流合成装置,其特征在于,包括:
生成模块,用于接收输入视频流、初始参数,并生成虚拟场景;其中,所述生成模块具体用于接收用户针对虚拟场景的场景类型的选择操作数据;根据选择操作数据,确定出用户所选中的虚拟场景类型所对应的虚拟场景标识;根据虚拟场景标识,从预设的虚拟场景库中获取相匹配的多个预设的虚拟场景进行组合,得到组合后的虚拟场景;将组合后的虚拟场景作为所述虚拟场景;所述虚拟场景的场景类型包括以下至少之一:购物场景、工作场景、娱乐场景、天气场景;
合成模块,用于依据所述初始参数将所述输入视频流和所述虚拟场景进行合成,得到第一视频流;
调整模块,用于接收并依据自定义参数,采用虚拟摄像机对所述第一视频流进行调整,得到结果视频流;所述自定义参数,包括:摄像机参数、前景参数、虚拟场景参数;并将所述结果视频流发送至客户端;所述客户端用于将所述结果视频流同时导入多个虚拟摄像头中进行直播推流。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210910457.0A CN115278364B (zh) | 2022-07-29 | 2022-07-29 | 一种视频流合成方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210910457.0A CN115278364B (zh) | 2022-07-29 | 2022-07-29 | 一种视频流合成方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115278364A CN115278364A (zh) | 2022-11-01 |
CN115278364B true CN115278364B (zh) | 2024-05-17 |
Family
ID=83747225
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210910457.0A Active CN115278364B (zh) | 2022-07-29 | 2022-07-29 | 一种视频流合成方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115278364B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116389671A (zh) * | 2023-03-29 | 2023-07-04 | 浪潮软件科技有限公司 | 一种视频通话虚拟背景实现方法及系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110460794A (zh) * | 2019-09-09 | 2019-11-15 | 北京西山居互动娱乐科技有限公司 | 一种视频录制的方法及装置 |
CN112135158A (zh) * | 2020-09-17 | 2020-12-25 | 重庆虚拟实境科技有限公司 | 基于混合现实的直播方法及相关设备 |
CN113395540A (zh) * | 2021-06-09 | 2021-09-14 | 广州博冠信息科技有限公司 | 虚拟演播系统、虚拟演播实现方法、装置及设备、介质 |
WO2021238804A1 (zh) * | 2020-05-29 | 2021-12-02 | 深圳市瑞立视多媒体科技有限公司 | 混合现实虚拟预演拍摄系统 |
CN114339405A (zh) * | 2022-01-04 | 2022-04-12 | 广州博冠信息科技有限公司 | Ar视频数据流远程制作方法及装置、设备、存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7113618B2 (en) * | 2001-09-18 | 2006-09-26 | Intel Corporation | Portable virtual reality |
-
2022
- 2022-07-29 CN CN202210910457.0A patent/CN115278364B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110460794A (zh) * | 2019-09-09 | 2019-11-15 | 北京西山居互动娱乐科技有限公司 | 一种视频录制的方法及装置 |
WO2021238804A1 (zh) * | 2020-05-29 | 2021-12-02 | 深圳市瑞立视多媒体科技有限公司 | 混合现实虚拟预演拍摄系统 |
CN112135158A (zh) * | 2020-09-17 | 2020-12-25 | 重庆虚拟实境科技有限公司 | 基于混合现实的直播方法及相关设备 |
CN113395540A (zh) * | 2021-06-09 | 2021-09-14 | 广州博冠信息科技有限公司 | 虚拟演播系统、虚拟演播实现方法、装置及设备、介质 |
CN114339405A (zh) * | 2022-01-04 | 2022-04-12 | 广州博冠信息科技有限公司 | Ar视频数据流远程制作方法及装置、设备、存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN115278364A (zh) | 2022-11-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108737882B (zh) | 图像的显示方法、装置、存储介质及电子装置 | |
EP3793205A1 (en) | Content based stream splitting of video data | |
US11450044B2 (en) | Creating and displaying multi-layered augemented reality | |
US20150124048A1 (en) | Switchable multiple video track platform | |
CN103581705A (zh) | 视频节目识别方法和系统 | |
US10255949B2 (en) | Methods and systems for customizing virtual reality data | |
CN106792246A (zh) | 一种融合式虚拟场景互动的方法及系统 | |
CN106331880B (zh) | 一种信息处理方法及系统 | |
CN202998337U (zh) | 视频节目识别系统 | |
CN106792228A (zh) | 一种直播互动方法和系统 | |
CN114139491A (zh) | 一种数据处理方法、装置及存储介质 | |
KR20210081082A (ko) | 객체의 모션 데이터 기반의 아바타 컨텐츠를 제공하는 서버, 방법 및 사용자 단말 | |
CN115278364B (zh) | 一种视频流合成方法及装置 | |
US20250203137A1 (en) | Methods and systems for utilizing live embedded tracking data within a live sports video stream | |
CN110300118B (zh) | 流媒体处理方法、装置及存储介质 | |
CN105635745B (zh) | 基于在线直播应用而生成签名照的方法及客户端 | |
CN108320331B (zh) | 一种生成用户场景的增强现实视频信息的方法与设备 | |
KR101085718B1 (ko) | 서버측 분산 영상처리를 이용한 증강현실 제공 시스템 및 방법 | |
CN112492323B (zh) | 直播蒙版的生成方法、可读存储介质及计算机设备 | |
CN108713313B (zh) | 多媒体数据处理方法、装置和设备/终端/服务器 | |
Bentaleb et al. | Solutions, Challenges and Opportunities in Volumetric Video Streaming: An Architectural Perspective | |
Pan et al. | Mobile edge assisted multi-view light field video system: Prototype design and empirical evaluation | |
CN108184078A (zh) | 一种视频处理系统及其方法 | |
CN116456129A (zh) | 直播视频流的处理方法、装置、播放方法及电子设备 | |
CN115661414A (zh) | 一种图像处理方法及智能终端 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |