CN111586444B - 视频处理方法、装置、电子设备及存储介质 - Google Patents
视频处理方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN111586444B CN111586444B CN202010506697.5A CN202010506697A CN111586444B CN 111586444 B CN111586444 B CN 111586444B CN 202010506697 A CN202010506697 A CN 202010506697A CN 111586444 B CN111586444 B CN 111586444B
- Authority
- CN
- China
- Prior art keywords
- hair
- target
- video frame
- original video
- feature
- 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
- 238000003672 processing method Methods 0.000 title claims abstract description 30
- 230000000694 effects Effects 0.000 claims abstract description 101
- 238000012545 processing Methods 0.000 claims abstract description 70
- 238000000034 method Methods 0.000 claims abstract description 24
- 238000001914 filtration Methods 0.000 claims description 57
- 230000015654 memory Effects 0.000 claims description 18
- 238000003709 image segmentation Methods 0.000 claims description 15
- 238000010586 diagram Methods 0.000 description 26
- 230000002093 peripheral effect Effects 0.000 description 10
- 230000001133 acceleration Effects 0.000 description 9
- 230000006870 function Effects 0.000 description 8
- 238000004891 communication Methods 0.000 description 6
- 230000003287 optical effect Effects 0.000 description 5
- 230000008569 process Effects 0.000 description 3
- 238000013473 artificial intelligence Methods 0.000 description 2
- 239000000919 ceramic Substances 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 238000012549 training Methods 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 230000006641 stabilisation Effects 0.000 description 1
- 238000011105 stabilization Methods 0.000 description 1
Images
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/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/04—Context-preserving transformations, e.g. by using an importance map
-
- 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/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/23418—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving operations for analysing video streams, e.g. detecting features or characteristics
-
- 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/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
- H04N21/44008—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 involving operations for analysing video streams, e.g. detecting features or characteristics in the video stream
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Image Processing (AREA)
Abstract
本申请提供了一种视频处理方法、装置、电子设备及存储介质,属于视频处理领域。所述方法包括:获取视频数据,所述视频数据包括至少两个原始视频帧;对于每个原始视频帧,识别所述原始视频帧中的至少两条目标头发纹路;在所述原始视频帧中对所述至少两条目标头发纹路进行位置偏移,得到所述原始视频帧对应的特效视频帧,且不同的原始视频帧中目标头发纹路的位置偏移量不同;播放所述至少两个原始视频帧对应的特效视频帧。上述方法实现了对不同视频帧中的头发纹路变形,使得各视频帧中的头发纹路不同,播放视频的时候,实现了流动发丝的动态效果,提高了视频的娱乐性和可观赏性,从而提高了视频的播放效果。
Description
技术领域
本申请涉及视频处理领域,特别涉及一种视频处理方法、装置、电子设备及存储介质。
背景技术
随着视频的广泛传播和视频处理技术的提升,视频处理方式变得丰富多样,其中,在视频中添加特效越来越流行,例如,在视频中添加各种滤镜,贴纸等,从而提高了视频的趣味性和视觉效果。而随着用户对视频播放效果的需求日益增加,需要提供更多的视频处理方式来满足用户。
发明内容
本申请实施例提供了一种视频处理方法、装置、电子设备及存储介质,可以提高视频的娱乐性和可观赏性,从而提高视频的播放效果。所述技术方案如下:
第一方面,提供了一种视频处理方法,所述方法包括:
获取视频数据,所述视频数据包括至少两个原始视频帧;
对于每个原始视频帧,识别所述原始视频帧中的至少两条目标头发纹路;
在所述原始视频帧中对所述至少两条目标头发纹路进行位置偏移,得到所述原始视频帧对应的特效视频帧,且不同的原始视频帧中目标头发纹路的位置偏移量不同;
播放所述至少两个原始视频帧对应的特效视频帧。
在一种可能的实现方式中,所述在所述原始视频帧中对所述至少两条目标头发纹路进行位置偏移,得到所述原始视频帧对应的特效视频帧,包括:
从每条目标头发纹路中分别确定至少一个目标点;
根据所述每个目标点的偏移量和偏移方向,在所述原始视频帧中对所述每个目标点进行位置偏移,得到所述原始视频帧对应的特效视频帧。
在另一种可能的实现方式中,所述根据所述每个目标点的偏移量和偏移方向,在所述原始视频帧中对所述每个目标点进行位置偏移,得到所述原始视频帧对应的特效视频帧之前,所述方法还包括:
对于任一个目标点,从所述目标点所属的目标头发纹路中,获取所述目标点所属的头发线段;
获取以所述目标点为切点、与所述头发线段相切的第一直线;
获取经过所述目标点且与所述第一直线垂直的第二直线,根据所述第二直线的方向确定所述目标点的偏移方向。
在另一种可能的实现方式中,所述识别所述原始视频帧中的至少两条目标头发纹路,包括:
确定所述原始视频帧中的头发区域;
对所述头发区域进行滤波处理,得到所述至少两条目标头发纹路。
在另一种可能的实现方式中,所述对所述头发区域进行滤波处理,得到所述至少两条目标头发纹路,包括:
对所述头发区域进行滤波处理,得到所述头发区域中的多个图像块分别对应的特征图;
对于任一个图像块,从所述图像块对应的特征图中选择一条头发纹路特征,作为所述图像块的目标头发纹路特征;
根据所述多个图像块的目标头发纹路特征,确定所述原始视频帧中的至少两条目标头发纹路。
在另一种可能的实现方式中,所述对所述头发区域进行滤波处理,得到所述头发区域中的多个图像块分别对应的特征图,包括:
按照至少两个方向对所述头发区域进行滤波处理,得到所述多个图像块在所述至少两个方向上分别对应的特征图;
所述从所述图像块对应的特征图中选择一条头发纹路特征,作为所述图像块的目标头发纹路特征,包括:
根据所述图像块对应的至少两个特征图中的头发纹路特征,从所述图像块对应的至少两个特征图中选择所述图像块的目标特征图;
从所述目标特征图中选择一条头发纹路特征,作为所述图像块的目标头发纹路特征。
在另一种可能的实现方式中,从所述目标特征图中选择一条头发纹路特征,作为所述图像块的目标头发纹路特征,包括:
对所述目标特征图进行二值化处理,从二值化处理后的目标特征图中选择一条头发纹路特征,作为所述图像块的目标头发纹路特征。
在另一种可能的实现方式中,所述确定所述原始视频帧中的头发区域,包括:
调用图像分割模型,对所述原始视频帧进行图像分割处理,得到所述头发区域。
第二方面,提供了一种视频处理装置,所述装置包括:
视频数据获取模块,用于获取视频数据,所述视频数据包括至少两个原始视频帧;
头发纹路识别模块,用于对于每个原始视频帧,识别所述原始视频帧中的至少两条目标头发纹路;
特效视频帧获取模块,用于在所述原始视频帧中对所述至少两条目标头发纹路进行位置偏移,得到所述原始视频帧对应的特效视频帧,且不同的原始视频帧中目标头发纹路的位置偏移量不同;
特效视频帧播放模块,用于播放所述至少两个原始视频帧对应的特效视频帧。
在一种可能的实现方式中,所述特效视频帧获取模块,包括:
目标点确定子模块,用于从每条目标头发纹路中分别确定至少一个目标点;
位置偏移子模块,用于根据所述每个目标点的偏移量和偏移方向,在所述原始视频帧中对所述每个目标点进行位置偏移,得到所述原始视频帧对应的特效视频帧。
在另一种可能的实现方式中,所述特效视频帧获取模块还包括:
偏移方向确定子模块,用于对于任一个目标点,从所述目标点所属的目标头发纹路中,获取所述目标点所属的头发线段;获取以所述目标点为切点、与所述头发线段相切的第一直线;获取经过所述目标点且与所述第一直线垂直的第二直线,根据所述第二直线的方向确定所述目标点的偏移方向。
在另一种可能的实现方式中,所述头发纹路识别模块包括:
头发区域确定子模块,用于确定所述原始视频帧中的头发区域;
头发区域滤波子模块,用于对所述头发区域进行滤波处理,得到所述至少两条目标头发纹路。
在另一种可能的实现方式中,所述头发区域滤波子模块包括:
特征图获取单元,用于对所述头发区域进行滤波处理,得到所述头发区域中的多个图像块分别对应的特征图;
头发纹路特征选择单元,用于对于任一个图像块,从所述图像块对应的特征图中选择一条头发纹路特征,作为所述图像块的目标头发纹路特征;
头发纹路确定单元,用于根据所述多个图像块的目标头发纹路特征,确定所述原始视频帧中的至少两条目标头发纹路。
在另一种可能的实现方式中,所述特征图获取单元,用于按照至少两个方向对所述头发区域进行滤波处理,得到所述多个图像块在所述至少两个方向上分别对应的特征图;
所述头发纹路特征选择单元包括:
特征图选择子单元,用于根据所述图像块对应的至少两个特征图中的头发纹路特征,从所述图像块对应的至少两个特征图中选择所述图像块的目标特征图;
头发纹路特征选择子单元,用于从所述目标特征图中选择一条头发纹路特征,作为所述图像块的目标头发纹路特征。
在另一种可能的实现方式中,所述头发纹路特征选择子单元,用于对所述目标特征图进行二值化处理,从二值化处理后的目标特征图中选择一条头发纹路特征,作为所述图像块的目标头发纹路特征。
在另一种可能的实现方式中,所述头发区域确定子模块,用于调用图像分割模型,对所述原始视频帧进行图像分割处理,得到所述头发区域。
第三方面,提供了一种电子设备,所述电子设备包括处理器和存储器,所述存储器中存储有至少一条指令,所述指令由所述处理器加载并执行以实现上述任一种可能实现方式中的视频处理方法中所执行的操作。
第四方面,提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一条指令,所述指令由处理器加载并执行以实现上述任一种可能实现方式中的视频处理方法中电子设备执行的操作。
本申请实施例提供的技术方案带来的有益效果至少包括:
在本申请实施例中,在获取到包括至少两个原始视频帧的视频数据后,在每个原始视频帧中,对原始视频帧中至少两条头发纹路进行位置偏移,使得偏移所得到的特效视频帧中头发纹路相较于原始视频帧产生一定的形变,且由于在视频处理时,对于不同的原始视频帧中目标头发纹路的位置偏移量不同,因此,所得到的不同特效视频帧中的头发纹路的形变不同,最终在播放至少两个原始视频帧对应的特效视频帧时,就能够实现流动发丝的动态效果,提高了视频的娱乐性和可观赏性,从而提高了视频的播放效果。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种实施环境的示意图;
图2是本申请实施例提供的一种视频处理方法的流程图;
图3是本申请实施例提供的一种视频处理方法的流程图;
图4是本申请实施例提供的一种视频处理装置的框图;
图5是本申请实施例提供的一种终端的结构示意图;
图6是本申请实施例提供的一种服务器的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
可以理解,本申请所使用的术语“每个”、“多个”及“任一”等,多个包括两个或两个以上,每个是指对应的多个中的每一个,任一是指对应的多个中的任意一个。举例来说,多个视频帧包括10个视频帧,而每个视频帧是指这10个视频帧中的每一个视频帧,任一视频帧是指10个视频帧中的任意一个视频帧。
图1是本申请实施例提供的一种实施环境的示意图。参见图1,该实施环境包括至少一个终端101和服务器102(图1以两个终端101为例)。终端101和服务器102之间通过无线或者有线网络连接。并且,终端101上可以安装由服务器102提供服务的目标应用,终端101的用户可以通过该目标应用实现例如数据传输、消息交互等功能。
终端101可以为电脑、手机、平板电脑或者其他终端。目标应用可以为终端101上安装的任一应用。并且,目标应用可以为终端101操作系统中的目标应用,还可以为第三方提供的目标应用。例如,目标应用可以为直播应用、购物应用、音乐应用、社交应用、游戏应用或者短视频应用等。服务器102可以为该目标应用对应的后台服务器。相应的,服务器102可以为直播服务器、购物服务器、音乐服务器、社交服务器、游戏服务器或者短视频服务器等。服务器102还可以为提供云计算服务或者云存储服务的云服务器,并且,服务器102可以是单独的服务器,也可以是由多个单独的服务器构成的服务器集群,本申请对此不做限制。
终端101可以获取视频数据,其中,视频数据包括至少两个原始视频帧,终端101可以识别每个原始视频帧中的目标头发纹路,在每个原始视频帧中对目标头发纹路进行位置偏移,且不同的原始视频帧中目标头发纹路的位置偏移量不同,以得到每个原始视频帧对应的特效视频帧,然后终端101播放特效视频帧时,可以流动发丝的动态效果。
本申请中的视频处理方法可以应用在对已经获取的视频进行视频处理的场景下,例如,终端101或者服务器102可以使用上述视频处理方法对已经生成的视频进行视频处理,得到处理后的特效视频。播放该特效视频时,特效视频中人物的头发可以实现流动发丝的动态效果。
本申请中的视频处理方法还可以应用在对视频流数据进行视频处理的场景下,例如,应用在视频直播的场景下。在视频直播时,主播侧的终端101可以通过上述方法对采集到的视频流数据(连续的原始视频帧)进行视频处理,得到处理后的连续的特效视频帧,在播放该连续的特效视频帧的同时或者之后,将连续的特效视频帧发送给服务器102,由服务器102将该连续的特效视频帧发送给观众侧的终端101,观众侧的终端101连续播放直播视频时,即对该连续的特效视频帧进行播放时,直播的视频中的头发可以实现流动发丝的动态效果。并且,主播侧的终端101所播放的视频中,也具有流动发丝的动态效果。
需要说明的一点是,在视频直播的场景下,主播侧的终端101也可以将采集到的视频流数据直接发送给服务器102,由服务器102通过上述视频处理方法对视频流数据进行处理,得到连续的特效视频帧,将连续的特效视频帧发送给主播侧的终端101和观众侧的终端101,主播侧的终端101和观众侧的终端101播放该连续的特效视频帧,则直播的视频中可以实现流动发丝的动态效果。
需要说明的一点是,上述终端101采集的视频流数据也可以是当前采集的一帧视频帧,终端101获取到该视频帧对应的特效视频帧后,将该特效视频帧与上一个经同样方法得到的特效视频帧连续播放,则直播的视频中可以实现流动发丝的动态效果。
图2是本申请实施例提供的一种视频处理方法的流程图。参见图2,该实施例包括:
步骤201:获取视频数据,视频数据包括至少两个原始视频帧。
步骤202:对于每个原始视频帧,识别原始视频帧中的至少两条目标头发纹路。
步骤203:在原始视频帧中对至少两条目标头发纹路进行位置偏移,得到原始视频帧对应的特效视频帧,且不同的原始视频帧中目标头发纹路的位置偏移量不同。
步骤204:播放至少两个原始视频帧对应的特效视频帧。
在本申请实施例中,在获取到包括至少两个原始视频帧的视频数据后,在每个原始视频帧中,对原始视频帧中至少两条头发纹路进行位置偏移,使得偏移所得到的特效视频帧中头发纹路相较于原始视频帧产生一定的形变,且由于在视频处理时,对于不同的原始视频帧中目标头发纹路的位置偏移量不同,因此,所得到的不同特效视频帧中的头发纹路的形变不同,最终在播放至少两个原始视频帧对应的特效视频帧时,就能够实现流动发丝的动态效果,提高了视频的娱乐性和可观赏性,从而提高了视频的播放效果。
在一种可能的实现方式中,在原始视频帧中对至少两条目标头发纹路进行位置偏移,得到原始视频帧对应的特效视频帧,包括:
从每条目标头发纹路中分别确定至少一个目标点;
根据每个目标点的偏移量和偏移方向,在原始视频帧中对每个目标点进行位置偏移,得到原始视频帧对应的特效视频帧。
在另一种可能的实现方式中,根据每个目标点的偏移量和偏移方向,在原始视频帧中对每个目标点进行位置偏移,得到原始视频帧对应的特效视频帧之前,方法还包括:
对于任一个目标点,从目标点所属的目标头发纹路中,获取目标点所属的头发线段;
获取以目标点为切点、与头发线段相切的第一直线;
获取经过目标点且与第一直线垂直的第二直线,根据第二直线的方向确定目标点的偏移方向。
在另一种可能的实现方式中,识别原始视频帧中的至少两条目标头发纹路,包括:
确定原始视频帧中的头发区域;
对头发区域进行滤波处理,得到至少两条目标头发纹路。
在另一种可能的实现方式中,对头发区域进行滤波处理,得到至少两条目标头发纹路,包括:
对头发区域进行滤波处理,得到头发区域中的多个图像块分别对应的特征图;
对于任一个图像块,从图像块对应的特征图中选择一条头发纹路特征,作为图像块的目标头发纹路特征;
根据多个图像块的目标头发纹路特征,确定原始视频帧中的至少两条目标头发纹路。
在另一种可能的实现方式中,对头发区域进行滤波处理,得到头发区域中的多个图像块分别对应的特征图,包括:
按照至少两个方向对头发区域进行滤波处理,得到多个图像块在至少两个方向上分别对应的特征图;
从图像块对应的特征图中选择一条头发纹路特征,作为图像块的目标头发纹路特征,包括:
根据图像块对应的至少两个特征图中的头发纹路特征,从图像块对应的至少两个特征图中选择图像块的目标特征图;
从目标特征图中选择一条头发纹路特征,作为图像块的目标头发纹路特征。
在另一种可能的实现方式中,从目标特征图中选择一条头发纹路特征,作为图像块的目标头发纹路特征,包括:
对目标特征图进行二值化处理,从二值化处理后的目标特征图中选择一条头发纹路特征,作为图像块的目标头发纹路特征。
在另一种可能的实现方式中,确定原始视频帧中的头发区域,包括:
调用图像分割模型,对原始视频帧进行图像分割处理,得到头发区域。
图3是本申请实施例提供的一种视频处理方法的流程图。参见图3,该实施例包括:
步骤301:终端获取视频数据,视频数据包括至少两个原始视频帧。
从视频数据的来源来说,该视频数据可以是终端中已存储的视频数据,也可以是终端从服务器获取的视频数据。从视频数据的形式来说,视频数据可以是已拍摄好的视频,也可以是视频流数据,即连续的视频帧,本申请对此不做限制。
视频是由静止的图像组成的,这些静止的图像被称为视频帧,在本申请中,原始视频帧是指未经本申请中的视频处理方法处理过的视频帧,即该原始视频帧既可以是终端直接采集的未经任何视频处理的视频帧,也可以是经过除本身请中的视频处理方法之外的其他视频处理方法处理后的视频帧。
视频数据中包括多个原始视频帧,而本申请以视频帧为单位来处理终端获取的视频数据,得到原始视频帧对应的特效视频帧,后续终端播放处理后的视频数据时,即终端连续播放特效视频帧时,即可实现流动发丝的动态效果。
步骤302:对于每个原始视频帧,终端确定原始视频帧中的头发区域。
头发区域即视频帧中用户的头发所在的区域,对于每个原始视频帧,终端要先确定出原始视频帧中的头发区域,方便后续针对头发区域进行处理。
在一种可能的实现方式中,终端确定原始视频帧中的头发区域的实现方式为:终端调用图像分割模型,对原始视频帧进行图像分割处理,得到头发区域。
其中,该图像分割模型可以是根据样本视频帧和样本视频帧中的头发区域训练得到的,通过一次或多次训练,图像分割模型可以学习到视频帧和该视频帧中的头发区域的关系,从而具备根据视频帧识别头发区域的能力,保证了模型的准确率,通过该图像分割模型获取视频帧中的头发区域,在保证准确率的前提下提高了处理效率。
在另一种可能的实现方式中,终端确定原始视频帧中的头发区域的实现方式为:终端根据原始视频帧中的像素点的颜色和亮度确定该原始视频帧中的头发区域。
上述终端确定原始视频帧中的头发区域的实现方式只是示例性说明,也可以采用其他方式确定原始视频帧中的头发区域,例如,根据原始视频帧中的像素点的灰度值确定原始视频帧中的头发区域,本申请对此不做限制。
步骤303:终端对头发区域进行滤波处理,得到至少两条目标头发纹路。
其中,目标头发纹路是指头发区域中的头发的纹路,目标头发纹路可以有多条,且不同的目标头发纹路的形状可能相同也可能不同,例如,目标头发纹路有三条,第一条目标头发纹路为S形,第二条目标头发纹路为直线型,第三条目标头发纹路为弧形。在一种可能的实现方式中,终端对头发区域进行滤波处理,得到至少两条目标头发纹路的实现方式包括以下步骤(1)-(3):
(1)终端对头发区域进行滤波处理,得到头发区域中的多个图像块分别对应的特征图。
终端是通过滤波器对头发区域进行滤波处理的,在滤波前,终端设置好滤波器的滤波窗口的尺寸,将头发区域输入到滤波器中,滤波器以滤波窗口为单位对头发区域进行滤波,然后输出每个滤波窗口对应的特征图。
其中,滤波窗口即为头发区域的图像块,滤波窗口的尺寸即是头发区域的图像块的尺寸,滤波窗口对应的特征图即图像块对应的特征图。在头发区域的尺寸确定时,滤波窗口的尺寸决定了头发区域的图像块的数量,滤波窗口的尺寸越小,头发区域中的图像块越多,对应的特征图也越多。滤波窗口的尺寸是以像素为单位的,并且滤波窗口的尺寸可以根据视频帧的尺寸确定,例如,滤波窗口的大小可以为3*3、5*5、7*7等,本申请对此不做限制。
在一种可能的实现方式中,滤波器为一个方向的滤波器,相应的,终端对头发区域进行滤波处理,得到头发区域中的多个图像块分别对应的特征图的实现方式为:终端按照一个方向对头发区域进行滤波处理,得到头发区域中的多个图像块在该方向上分别对应的特征图。
其中,方向可以为任意方向,例如,以水平方向为基准,滤波的方向可以是水平方向顺时针旋转45度的方向,如此可以得到每个图像块在45度方向上对应的特征图,或者水平方向顺时针旋转90度的方向,即竖直方向,如此可以得到每个图像块在竖直方向上对应的特征图,本申请对此不做限制。
在另一种可能的实现方式中,滤波器包括多个方向的滤波器,相应的,终端对头发区域进行滤波处理,得到头发区域中的多个图像块分别对应的特征图的实现方式为:终端按照至少两个方向对头发区域进行滤波处理,得到多个图像块在至少两个方向上分别对应的特征图。
其中,方向可以为任意方向,且方向的数量可以根据需要设定,例如,可以以15度作为间隔,根据360度划分出24个方向,如此可以得到每个图像块在24个方向上分别对应的特征图,或者以18度为间隔划分出20个方向,如此可以得到每个图像块在20方向上分别对应的特征图,本申请对此不做限制。
需要说明的一点是,在本申请实施例中,对头发区域进行滤波处理的方式可以为Gabor(一种滤波方式)滤波,相应的,所用的滤波器为Gabor滤波器。由于Gabor滤波十分适合纹理表达和分离,通过Gabor滤波对头发区域进行滤波处理来获取目标头发纹路,获取的目标头发纹路准确,清晰。当然,也可以采用其他滤波方式对头发区域进行滤波处理,本申请对此不做限制。
(2)对于任一个图像块,终端从图像块对应的特征图中选择一条头发纹路特征,作为图像块的目标头发纹路特征。
图像块对应的特征图中记录了该图像块中的头发纹路对应的头发纹路特征,由于图像块中的头发纹路一般有多条,相应的,特征图中的头发纹路特征也有多条。
在一种可能的实现方式中,终端是在一个方向上对头发区域进行滤波处理的,只获取了每个图像块在一个方向上对应的特征图,则对于任一个图像块,终端可以直接从该图像块对应的特征图中选择出目标头发纹路特征,实现方式为:对于任一个图像块,终端对该图像块对应的特征图进行二值化处理,从二值化处理后的特征图中选择一条头发纹路特征,作为图像块的目标头发纹路特征。
其中,目标头发纹路特征可以是该特征图中头发纹路最长的头发纹路特征,也可以是该特征图中与其他头发纹路特征交叉数量最少的头发纹路特征,或者是头发纹路最长且与其他头发纹路特征交叉数量最少的头发纹路特征,本申请对此不做限制。
在本申请中,通过对图像块的特征图进行二值化处理,从二值化处理后的特征图中选择目标头发纹路特征,由于二值化处理后,特征图中只有黑色和白色,特征图中的头发纹路特征会更加清晰,从而容易选择目标头发纹路特征。
需要说明的一点是,终端也可以不对图像块的特征图进行二值化处理,而直接根据特征图中每个像素点的灰度值从特征图中选择目标头发纹路特征,本申请对此不做限制。
在另一种可能的实现方式中,终端是在多个方向上对头发区域进行滤波处理的,获取了每个图像块在多个方向上分别对应的特征图,即每个图像块包括至少两个特征图,则对于任一个图像块,终端从图像块对应的特征图中选择一条头发纹路特征,作为图像块的目标头发纹路特征的实现方式为:终端根据该图像块对应的至少两个特征图中的头发纹路特征,从该图像块对应的至少两个特征图中选择图像块的目标特征图,终端从目标特征图中选择一条头发纹路特征,作为图像块的目标头发纹路特征。
其中,相对于该图像块对应的其他特征图来说,该图像块的目标特征图中的头发纹路特征更多,或者头发纹路特征更清晰,或者头发纹路特征更长。也即是,终端要从该图像块对应的至少两个特征图中选择头发纹路特征更多、头发纹路更清晰、或者头发纹路特征更长的特征图作为目标特征图。如此选择出的目标特征图中的头发纹路特征更能体现图像块中的头发纹路。
终端从目标特征图中选择一条头发纹路特征,作为图像块的目标头发纹路特征的实现方式为:终端对目标特征图进行二值化处理,从二值化处理后的目标特征图中选择一条头发纹路特征,作为图像块的目标头发纹路特征。
其中,目标头发纹路特征可以是目标特征图中头发纹路最长的头发纹路特征,也可以是目标特征图中与其他头发纹路特征交叉数量最少的头发纹路特征,或者是目标特征图中头发纹路最长且与其他头发纹路特征交叉数量最少的头发纹路特征,本申请对此不做限制。
在本申请实施例中,终端按照一个方向对头发区域进行滤波处理,获取每个图像块对应的特征图,对于任一个图像块,直接从该图像块对应的特征图中选择目标头发纹路特征,方法简单,获取目标头发纹路特征的效率高。而终端按照至少两个方向对头发区域进行滤波处理,获取每个图像块在该至少两个方向上分别对应的特征图,从至少两个特征图中选择目标特征图,再从目标特征图中选择目标头发纹路特征,由于目标特征图中头发纹路特征更多,或者头发纹路特征更清晰,或者头发纹路特征更长,从而选择出的目标头发纹路特征也更清晰、头发纹路特征更长,进而更具有代表性。
(3)终端根据多个图像块的目标头发纹路特征,确定原始视频帧中的至少两条目标头发纹路。
该步骤的实现方式为,终端确定多个图像块的目标头发纹路特征在多个图像块中对应的目标头发纹路,将多个图像块中的目标头发纹路作为原始视频帧中的目标头发纹路,从而得到了至少两条目标头发纹路。
步骤304:终端在原始视频帧中对至少两条目标头发纹路进行位置偏移,得到原始视频帧对应的特效视频帧。
特效视频帧是针对原始视频帧来说的,由于对原始视频帧中的目标头发纹路进行位置偏移后,得到的视频帧在连续播放时,可以实现流动发丝的动态特效,所以将该视频帧称为特效视频帧。
在一种可能的实现方式中,终端在原始视频帧中对至少两条目标头发纹路进行位置偏移,得到原始视频帧对应的特效视频帧的实现方式为:终端从每条目标头发纹路中分别确定至少一个目标点,终端根据每个目标点的偏移量和偏移方向,在原始视频帧中对每个目标点进行位置偏移,得到原始视频帧对应的特效视频帧。
其中,不同的原始视频帧中目标头发纹路的位置偏移量不同,如此,得到的不同特效视频帧中的头发纹路的形变量不同,从而即使在多个原始视频帧中用户的位置不发生变化的情况下,播放特效视频帧时,也可以实现流动发丝的动态效果,从而提升了视频的视觉效果。
其中,终端从每条目标头发纹路中分别确定至少一个目标点的实现方式可以为:对于任一条目标头发纹路,终端根据预设的目标点间隔在该目标头发纹路中均匀采样至少一个目标点。其中,目标点间隔可以根据需要设置,例如目标点间隔可以为1个像素点或者2个像素点等,本申请对此不做限制。或者,对于任一条目标头发纹路,终端也可以从该目标头发纹路中采样预设数目个目标点。其中,预设数目可以为1、2或者3等,本申请对此不做限制。
终端根据每个目标点的偏移量和偏移方向,在原始视频帧中对每个目标点进行位置偏移,得到原始视频帧对应的特效视频帧之前,先要获取每个目标点的偏移量和偏移方向,其中,每个目标点的偏移量可以预设在终端中,且每个目标点的偏移量可以相同也可以不同,相应的,终端可以直接获取每个目标点的偏移量。
在一种可能的实现方式中,终端获取每个目标点的偏移方向的实现方式为:对于任一个目标点,终端从目标点所属的目标头发纹路中,获取目标点所属的头发线段,终端获取以目标点为切点、与头发线段相切的第一直线,终端获取经过目标点且与第一直线垂直的第二直线,根据第二直线的方向确定目标点的偏移方向。
可选地,目标点所属的头发线段为弧线段,相应的,终端根据第二直线的方向确定目标点的偏移方向的实现方式为:终端将第二直线的两个延伸方向中向头发线段的内侧方向延伸的方向作为该目标点的偏移方向。
需要说明的一点是,对于任一个目标点,当该目标点所属的头发线段为直线段时,终端可以将与该头发线段的方向垂直的任意方向作为该目标点的偏移方向。例如,当该头发线段为竖直方向的线段,则目标点的偏移方向可以水平向左或者水平向右,本申请对此不做限制。
步骤305:终端播放至少两个原始视频帧对应的特效视频帧。
终端可以在获取到至少两个原始视频帧对应的特效视频帧后,直接播放至少两个原始视频帧对应的特效视频帧,也可以将获取的特效视频帧存储下来,之后再播放存储的特效视频帧,本申请对此不做限制。
例如,在视频直播的场景下,主播侧的终端在获得特效视频帧后,在播放该特效视频帧的同时或者之后,将该特效视频帧发送给服务器,由服务器将该特效视频帧转发给观众侧的终端,观众侧的终端接收该特效视频帧,将该特效视频帧与上一个经同样方法获得的特效视频帧连续播放。
又如,在对已生成的视频进行视频编辑的场景下,对视频的每个视频帧进行处理,得到对应的特效视频帧后,可以直接预览由特效视频帧形成的特效视频,也可以将该特效视频存储,后续可以打开播放。
在本申请实施例中,在获取到包括至少两个原始视频帧的视频数据后,在每个原始视频帧中,对原始视频帧中至少两条头发纹路进行位置偏移,使得偏移所得到的特效视频帧中头发纹路相较于原始视频帧产生一定的形变,且由于在视频处理时,对于不同的原始视频帧中目标头发纹路的位置偏移量不同,因此,所得到的不同特效视频帧中的头发纹路的形变不同,最终在播放至少两个原始视频帧对应的特效视频帧时,就能够实现流动发丝的动态效果,提高了视频的娱乐性和可观赏性,从而提高了视频的播放效果。
需要说明的一点是,本申请实施例中的视频处理方法的执行主体为电子设备,其中电子设备包括终端和服务器,在该实施例中仅以执行主体为终端为例进行说明,在其他实施例中,执行主体也可以是服务器,本申请对此不做限制。
图4是本申请实施例提供的一种视频处理装置的框图。参见图4,该实施例包括:
视频数据获取模块401,用于获取视频数据,视频数据包括至少两个原始视频帧。
头发纹路识别模块402,用于对于每个原始视频帧,识别原始视频帧中的至少两条目标头发纹路。
特效视频帧获取模块403,用于在原始视频帧中对至少两条目标头发纹路进行位置偏移,得到原始视频帧对应的特效视频帧,且不同的原始视频帧中目标头发纹路的位置偏移量不同。
特效视频帧播放模块404,用于播放至少两个原始视频帧对应的特效视频帧。
在一种可能的实现方式中,特效视频帧获取模块403,包括:
目标点确定子模块,用于从每条目标头发纹路中分别确定至少一个目标点;
位置偏移子模块,用于根据每个目标点的偏移量和偏移方向,在原始视频帧中对每个目标点进行位置偏移,得到原始视频帧对应的特效视频帧。
在另一种可能的实现方式中,特效视频帧获取模块403还包括:
偏移方向确定子模块,用于对于任一个目标点,从目标点所属的目标头发纹路中,获取目标点所属的头发线段;获取以目标点为切点、与头发线段相切的第一直线;获取经过目标点且与第一直线垂直的第二直线,根据第二直线的方向确定目标点的偏移方向。
在另一种可能的实现方式中,头发纹路识别模块402包括:
头发区域确定子模块,用于确定原始视频帧中的头发区域;
头发区域滤波子模块,用于对头发区域进行滤波处理,得到至少两条目标头发纹路。
在另一种可能的实现方式中,头发区域滤波子模块包括:
特征图获取单元,用于对头发区域进行滤波处理,得到头发区域中的多个图像块分别对应的特征图;
头发纹路特征选择单元,用于对于任一个图像块,从图像块对应的特征图中选择一条头发纹路特征,作为图像块的目标头发纹路特征;
头发纹路确定单元,用于根据多个图像块的目标头发纹路特征,确定原始视频帧中的至少两条目标头发纹路。
在另一种可能的实现方式中,特征图获取单元,用于按照至少两个方向对头发区域进行滤波处理,得到多个图像块在至少两个方向上分别对应的特征图;
头发纹路特征选择单元包括:
特征图选择子单元,用于根据图像块对应的至少两个特征图中的头发纹路特征,从图像块对应的至少两个特征图中选择图像块的目标特征图;
头发纹路特征选择子单元,用于从目标特征图中选择一条头发纹路特征,作为图像块的目标头发纹路特征。
在另一种可能的实现方式中,头发纹路特征选择子单元,用于对目标特征图进行二值化处理,从二值化处理后的目标特征图中选择一条头发纹路特征,作为图像块的目标头发纹路特征。
在另一种可能的实现方式中,头发区域确定子模块,用于调用图像分割模型,对原始视频帧进行图像分割处理,得到头发区域。
在本申请实施例中,在获取到包括至少两个原始视频帧的视频数据后,在每个原始视频帧中,对原始视频帧中至少两条头发纹路进行位置偏移,使得偏移所得到的特效视频帧中头发纹路相较于原始视频帧产生一定的形变,且由于在视频处理时,对于不同的原始视频帧中目标头发纹路的位置偏移量不同,因此,所得到的不同特效视频帧中的头发纹路的形变不同,最终在播放至少两个原始视频帧对应的特效视频帧时,就能够实现流动发丝的动态效果,提高了视频的娱乐性和可观赏性,从而提高了视频的播放效果。
上述所有可选技术方案,可以采用任意结合形成本申请的可选实施例,在此不再一一赘述。
需要说明的是:上述实施例提供的视频处理装置在进行视频处理时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将电子设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的视频处理装置与视频处理方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
图5示出了本申请一个示例性实施例提供的终端500的结构框图。该终端500可以是:智能手机、平板电脑、MP3播放器(Moving Picture Experts Group Audio Layer III,动态影像专家压缩标准音频层面3)、MP4(Moving Picture Experts Group Audio LayerIV,动态影像专家压缩标准音频层面4)播放器、笔记本电脑或台式电脑。终端500还可能被称为用户设备、便携式终端、膝上型终端、台式终端等其他名称。
通常,终端500包括有:处理器501和存储器502。
处理器501可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器501可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器501也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器501可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器501还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器502可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器502还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器502中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器501所执行以实现本申请中方法实施例提供的视频处理方法。
在一些实施例中,终端500还可选包括有:外围设备接口503和至少一个外围设备。处理器501、存储器502和外围设备接口503之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口503相连。具体地,外围设备包括:射频电路504、触摸显示屏505、摄像头组件506、音频电路507、定位组件508和电源509中的至少一种。
外围设备接口503可被用于将I/O(Input/Output,输入/输出)相关的至少一个外围设备连接到处理器501和存储器502。在一些实施例中,处理器501、存储器502和外围设备接口503被集成在同一芯片或电路板上;在一些其他实施例中,处理器501、存储器502和外围设备接口503中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。
射频电路504用于接收和发射RF(Radio Frequency,射频)信号,也称电磁信号。射频电路504通过电磁信号与通信网络以及其他通信设备进行通信。射频电路504将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路504包括:天线系统、RF收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路504可以通过至少一种无线通信协议来与其它终端进行通信。该无线通信协议包括但不限于:城域网、各代移动通信网络(2G、3G、4G及5G)、无线局域网和/或WiFi(Wireless Fidelity,无线保真)网络。在一些实施例中,射频电路504还可以包括NFC(Near Field Communication,近距离无线通信)有关的电路,本申请对此不加以限定。
显示屏505用于显示UI(User Interface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏505是触摸显示屏时,显示屏505还具有采集在显示屏505的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器501进行处理。此时,显示屏505还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏505可以为一个,设置终端500的前面板;在另一些实施例中,显示屏505可以为至少两个,分别设置在终端500的不同表面或呈折叠设计;在再一些实施例中,显示屏505可以是柔性显示屏,设置在终端500的弯曲表面上或折叠面上。甚至,显示屏505还可以设置成非矩形的不规则图形,也即异形屏。显示屏505可以采用LCD(LiquidCrystal Display,液晶显示屏)、OLED(Organic Light-Emitting Diode,有机发光二极管)等材质制备。
摄像头组件506用于采集图像或视频。可选地,摄像头组件506包括前置摄像头和后置摄像头。通常,前置摄像头设置在终端的前面板,后置摄像头设置在终端的背面。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头、长焦摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能、主摄像头和广角摄像头融合实现全景拍摄以及VR(Virtual Reality,虚拟现实)拍摄功能或者其它融合拍摄功能。在一些实施例中,摄像头组件506还可以包括闪光灯。闪光灯可以是单色温闪光灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。
音频电路507可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器501进行处理,或者输入至射频电路504以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在终端500的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器501或射频电路504的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路507还可以包括耳机插孔。
定位组件508用于定位终端500的当前地理位置,以实现导航或LBS(LocationBased Service,基于位置的服务)。定位组件508可以是基于美国的GPS(GlobalPositioning System,全球定位系统)、中国的北斗系统、俄罗斯的格雷纳斯系统或欧盟的伽利略系统的定位组件。
电源509用于为终端500中的各个组件进行供电。电源509可以是交流电、直流电、一次性电池或可充电电池。当电源509包括可充电电池时,该可充电电池可以支持有线充电或无线充电。该可充电电池还可以用于支持快充技术。
在一些实施例中,终端500还包括有一个或多个传感器510。该一个或多个传感器510包括但不限于:加速度传感器511、陀螺仪传感器512、压力传感器513、指纹传感器514、光学传感器515以及接近传感器516。
加速度传感器511可以检测以终端500建立的坐标系的三个坐标轴上的加速度大小。比如,加速度传感器511可以用于检测重力加速度在三个坐标轴上的分量。处理器501可以根据加速度传感器511采集的重力加速度信号,控制触摸显示屏505以横向视图或纵向视图进行用户界面的显示。加速度传感器511还可以用于游戏或者用户的运动数据的采集。
陀螺仪传感器512可以检测终端500的机体方向及转动角度,陀螺仪传感器512可以与加速度传感器511协同采集用户对终端500的3D动作。处理器501根据陀螺仪传感器512采集的数据,可以实现如下功能:动作感应(比如根据用户的倾斜操作来改变UI)、拍摄时的图像稳定、游戏控制以及惯性导航。
压力传感器513可以设置在终端500的侧边框和/或触摸显示屏505的下层。当压力传感器513设置在终端500的侧边框时,可以检测用户对终端500的握持信号,由处理器501根据压力传感器513采集的握持信号进行左右手识别或快捷操作。当压力传感器513设置在触摸显示屏505的下层时,由处理器501根据用户对触摸显示屏505的压力操作,实现对UI界面上的可操作性控件进行控制。可操作性控件包括按钮控件、滚动条控件、图标控件、菜单控件中的至少一种。
指纹传感器514用于采集用户的指纹,由处理器501根据指纹传感器514采集到的指纹识别用户的身份,或者,由指纹传感器514根据采集到的指纹识别用户的身份。在识别出用户的身份为可信身份时,由处理器501授权该用户执行相关的敏感操作,该敏感操作包括解锁屏幕、查看加密信息、下载软件、支付及更改设置等。指纹传感器514可以被设置终端500的正面、背面或侧面。当终端500上设置有物理按键或厂商Logo时,指纹传感器514可以与物理按键或厂商Logo集成在一起。
光学传感器515用于采集环境光强度。在一个实施例中,处理器501可以根据光学传感器515采集的环境光强度,控制触摸显示屏505的显示亮度。具体地,当环境光强度较高时,调高触摸显示屏505的显示亮度;当环境光强度较低时,调低触摸显示屏505的显示亮度。在另一个实施例中,处理器501还可以根据光学传感器515采集的环境光强度,动态调整摄像头组件506的拍摄参数。
接近传感器516,也称距离传感器,通常设置在终端500的前面板。接近传感器516用于采集用户与终端500的正面之间的距离。在一个实施例中,当接近传感器516检测到用户与终端500的正面之间的距离逐渐变小时,由处理器501控制触摸显示屏505从亮屏状态切换为息屏状态;当接近传感器516检测到用户与终端500的正面之间的距离逐渐变大时,由处理器501控制触摸显示屏505从息屏状态切换为亮屏状态。
本领域技术人员可以理解,图5中示出的结构并不构成对终端500的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
图6是本申请实施例提供的一种服务器的结构示意图,该服务器600可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(central processingunits,CPU)601和一个或一个以上的存储器602,其中,所述存储器602中存储有至少两条指令,所述至少两条指令由所述处理器601加载并执行以实现上述各个方法实施例提供的视频处理方法。当然,该服务器还可以具有有线或无线网络接口、键盘以及输入输出接口等部件,以便进行输入输出,该服务器还可以包括其他用于实现设备功能的部件,在此不做赘述。
本申请实施例还提供了一种计算机设备,该计算机设备包括处理器和存储器,存储器中存储有至少两条指令,该至少两条指令由处理器加载并执行,以实现上述实施例的视频处理方法。
本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有至少两条指令,该至少两条指令由处理器加载并执行,以实现上述实施例的视频处理方法。
本申请实施例还提供了一种计算机程序,该计算机程序中存储有至少两条指令,该至少两条指令由处理器加载并执行,以实现上述实施例的视频处理方法。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本申请的可选实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (10)
1.一种视频处理方法,其特征在于,所述方法包括:
获取视频数据,所述视频数据包括至少两个原始视频帧;
对于每个原始视频帧,确定所述原始视频帧中的头发区域;
对所述头发区域进行滤波处理,得到至少两条目标头发纹路;
在所述原始视频帧中对所述至少两条目标头发纹路进行位置偏移,得到所述原始视频帧对应的特效视频帧,且不同的原始视频帧中目标头发纹路的位置偏移量不同;
播放所述至少两个原始视频帧对应的特效视频帧。
2.根据权利要求1所述的方法,其特征在于,所述在所述原始视频帧中对所述至少两条目标头发纹路进行位置偏移,得到所述原始视频帧对应的特效视频帧,包括:
从每条目标头发纹路中分别确定至少一个目标点;
根据每个目标点的偏移量和偏移方向,在所述原始视频帧中对所述每个目标点进行位置偏移,得到所述原始视频帧对应的特效视频帧。
3.根据权利要求2所述的方法,其特征在于,所述根据所述每个目标点的偏移量和偏移方向,在所述原始视频帧中对所述每个目标点进行位置偏移,得到所述原始视频帧对应的特效视频帧之前,所述方法还包括:
对于任一个目标点,从所述目标点所属的目标头发纹路中,获取所述目标点所属的头发线段;
获取以所述目标点为切点、与所述头发线段相切的第一直线;
获取经过所述目标点且与所述第一直线垂直的第二直线,根据所述第二直线的方向确定所述目标点的偏移方向。
4.根据权利要求1所述的方法,其特征在于,所述对所述头发区域进行滤波处理,得到所述至少两条目标头发纹路,包括:
对所述头发区域进行滤波处理,得到所述头发区域中的多个图像块分别对应的特征图;
对于任一个图像块,从所述图像块对应的特征图中选择一条头发纹路特征,作为所述图像块的目标头发纹路特征;
根据所述多个图像块的目标头发纹路特征,确定所述原始视频帧中的至少两条目标头发纹路。
5.根据权利要求4所述的方法,其特征在于,所述对所述头发区域进行滤波处理,得到所述头发区域中的多个图像块分别对应的特征图,包括:
按照至少两个方向对所述头发区域进行滤波处理,得到所述多个图像块在所述至少两个方向上分别对应的特征图;
所述从所述图像块对应的特征图中选择一条头发纹路特征,作为所述图像块的目标头发纹路特征,包括:
根据所述图像块对应的至少两个特征图中的头发纹路特征,从所述图像块对应的至少两个特征图中选择所述图像块的目标特征图;
从所述目标特征图中选择一条头发纹路特征,作为所述图像块的目标头发纹路特征。
6.根据权利要求5所述的方法,其特征在于,从所述目标特征图中选择一条头发纹路特征,作为所述图像块的目标头发纹路特征,包括:
对所述目标特征图进行二值化处理,从二值化处理后的目标特征图中选择一条头发纹路特征,作为所述图像块的目标头发纹路特征。
7.根据权利要求1所述的方法,其特征在于,所述确定所述原始视频帧中的头发区域,包括:
调用图像分割模型,对所述原始视频帧进行图像分割处理,得到所述头发区域。
8.一种视频处理装置,其特征在于,所述装置包括:
视频数据获取模块,用于获取视频数据,所述视频数据包括至少两个原始视频帧;
头发纹路识别模块,用于对于每个原始视频帧,识别所述原始视频帧中的至少两条目标头发纹路;
特效视频帧获取模块,用于在所述原始视频帧中对所述至少两条目标头发纹路进行位置偏移,得到所述原始视频帧对应的特效视频帧,且不同的原始视频帧中目标头发纹路的位置偏移量不同;
特效视频帧播放模块,用于播放所述至少两个原始视频帧对应的特效视频帧。
9.一种电子设备,其特征在于,所述电子设备包括处理器和存储器,所述存储器中存储有至少两条指令,所述指令由所述处理器加载并执行以实现如权利要求1至权利要求7任一项所述的视频处理方法所执行的操作。
10.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少两条指令,所述指令由处理器加载并执行以实现如权利要求1至权利要求7任一项所述的视频处理方法所执行的操作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010506697.5A CN111586444B (zh) | 2020-06-05 | 2020-06-05 | 视频处理方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010506697.5A CN111586444B (zh) | 2020-06-05 | 2020-06-05 | 视频处理方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111586444A CN111586444A (zh) | 2020-08-25 |
CN111586444B true CN111586444B (zh) | 2022-03-15 |
Family
ID=72125590
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010506697.5A Active CN111586444B (zh) | 2020-06-05 | 2020-06-05 | 视频处理方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111586444B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114219877B (zh) * | 2021-12-06 | 2024-06-25 | 北京字节跳动网络技术有限公司 | 人像头发流动特效处理方法、装置、介质和电子设备 |
CN114827706B (zh) * | 2022-03-09 | 2024-08-16 | 北京旷视科技有限公司 | 图像处理的方法、计算机程序产品、电子设备及存储介质 |
CN114758391B (zh) * | 2022-04-08 | 2023-09-12 | 北京百度网讯科技有限公司 | 发型图像确定方法、装置、电子设备、存储介质及产品 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6097396A (en) * | 1995-12-01 | 2000-08-01 | Lucas Digital Ltd | Method and apparatus for creating lifelike digital representation of hair and other fine-grained images |
CN102568015A (zh) * | 2011-12-29 | 2012-07-11 | 深圳市万兴软件有限公司 | 一种实现水滴荡漾特效的方法和装置 |
CN102592296A (zh) * | 2011-12-29 | 2012-07-18 | 深圳市万兴软件有限公司 | 一种实现水波纹荡漾特效的方法和装置 |
CN103606186A (zh) * | 2013-02-02 | 2014-02-26 | 浙江大学 | 一种图像与视频的虚拟发型建模方法 |
CN107146273A (zh) * | 2017-05-11 | 2017-09-08 | 北京航空航天大学 | 一种面向基于图像头发建模的自适应浮动切线匹配方法 |
CN107256555A (zh) * | 2017-05-25 | 2017-10-17 | 腾讯科技(上海)有限公司 | 一种图像处理方法、装置及存储介质 |
CN109982036A (zh) * | 2019-02-20 | 2019-07-05 | 华为技术有限公司 | 一种全景视频数据处理的方法、终端以及存储介质 |
CN110223218A (zh) * | 2019-05-16 | 2019-09-10 | 北京达佳互联信息技术有限公司 | 人脸图像处理方法、装置、电子设备及存储介质 |
CN110730303A (zh) * | 2019-10-25 | 2020-01-24 | 腾讯科技(深圳)有限公司 | 图像染发处理方法、装置、终端和存储介质 |
CN110930500A (zh) * | 2019-11-26 | 2020-03-27 | 浙江大学 | 一种基于单视角视频的动态头发建模方法 |
CN111083354A (zh) * | 2019-11-27 | 2020-04-28 | 维沃移动通信有限公司 | 一种视频录制方法及电子设备 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6765573B2 (en) * | 2000-10-26 | 2004-07-20 | Square Enix Co., Ltd. | Surface shading using stored texture map based on bidirectional reflectance distribution function |
CN109618183B (zh) * | 2018-11-29 | 2019-10-25 | 北京字节跳动网络技术有限公司 | 一种视频特效添加方法、装置、终端设备及存储介质 |
CN110213638B (zh) * | 2019-06-05 | 2021-10-08 | 北京达佳互联信息技术有限公司 | 动画显示方法、装置、终端及存储介质 |
-
2020
- 2020-06-05 CN CN202010506697.5A patent/CN111586444B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6097396A (en) * | 1995-12-01 | 2000-08-01 | Lucas Digital Ltd | Method and apparatus for creating lifelike digital representation of hair and other fine-grained images |
CN102568015A (zh) * | 2011-12-29 | 2012-07-11 | 深圳市万兴软件有限公司 | 一种实现水滴荡漾特效的方法和装置 |
CN102592296A (zh) * | 2011-12-29 | 2012-07-18 | 深圳市万兴软件有限公司 | 一种实现水波纹荡漾特效的方法和装置 |
CN103606186A (zh) * | 2013-02-02 | 2014-02-26 | 浙江大学 | 一种图像与视频的虚拟发型建模方法 |
CN107146273A (zh) * | 2017-05-11 | 2017-09-08 | 北京航空航天大学 | 一种面向基于图像头发建模的自适应浮动切线匹配方法 |
CN107256555A (zh) * | 2017-05-25 | 2017-10-17 | 腾讯科技(上海)有限公司 | 一种图像处理方法、装置及存储介质 |
CN109982036A (zh) * | 2019-02-20 | 2019-07-05 | 华为技术有限公司 | 一种全景视频数据处理的方法、终端以及存储介质 |
CN110223218A (zh) * | 2019-05-16 | 2019-09-10 | 北京达佳互联信息技术有限公司 | 人脸图像处理方法、装置、电子设备及存储介质 |
CN110730303A (zh) * | 2019-10-25 | 2020-01-24 | 腾讯科技(深圳)有限公司 | 图像染发处理方法、装置、终端和存储介质 |
CN110930500A (zh) * | 2019-11-26 | 2020-03-27 | 浙江大学 | 一种基于单视角视频的动态头发建模方法 |
CN111083354A (zh) * | 2019-11-27 | 2020-04-28 | 维沃移动通信有限公司 | 一种视频录制方法及电子设备 |
Non-Patent Citations (2)
Title |
---|
A real-time 3D hair animation system for human-computer interaction;J. Yu et al.;《2015 12th International Conference on Fuzzy Systems and Knowledge Discovery (FSKD)》;20160114;全文 * |
人脸图像的自适应美化与渲染研;梁凌宇;《中国优秀博硕士学位论文全文数据库(博士)信息科技辑(月刊),2014年第11期》;20141115;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN111586444A (zh) | 2020-08-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108401124B (zh) | 视频录制的方法和装置 | |
CN111372126B (zh) | 视频播放方法、装置及存储介质 | |
CN108449641B (zh) | 播放媒体流的方法、装置、计算机设备和存储介质 | |
CN110213608B (zh) | 显示虚拟礼物的方法、装置、设备及可读存储介质 | |
CN108965922B (zh) | 视频封面生成方法、装置和存储介质 | |
CN110149332B (zh) | 直播方法、装置、设备及存储介质 | |
CN109451343A (zh) | 视频分享方法、装置、终端及存储介质 | |
CN110533585B (zh) | 一种图像换脸的方法、装置、系统、设备和存储介质 | |
CN111586444B (zh) | 视频处理方法、装置、电子设备及存储介质 | |
CN111083526B (zh) | 视频转场方法、装置、计算机设备及存储介质 | |
CN109922356B (zh) | 视频推荐方法、装置和计算机可读存储介质 | |
CN111586431B (zh) | 进行直播处理的方法、装置、设备及存储介质 | |
CN110139143B (zh) | 虚拟物品显示方法、装置、计算机设备以及存储介质 | |
CN111753784A (zh) | 视频的特效处理方法、装置、终端及存储介质 | |
CN110839174A (zh) | 图像处理的方法、装置、计算机设备以及存储介质 | |
CN109451248B (zh) | 视频数据的处理方法、装置、终端及存储介质 | |
CN108845777B (zh) | 播放帧动画的方法和装置 | |
CN108965711B (zh) | 视频处理方法及装置 | |
CN110662105A (zh) | 动画文件的生成方法、装置及存储介质 | |
CN111083513B (zh) | 直播画面处理方法、装置、终端及计算机可读存储介质 | |
CN113038165A (zh) | 确定编码参数组的方法、设备及存储介质 | |
CN112565806A (zh) | 虚拟礼物赠送方法、装置、计算机设备及介质 | |
CN109660876B (zh) | 显示列表的方法和装置 | |
CN107888975B (zh) | 视频播放方法、装置及存储介质 | |
CN112257594B (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 |