一种实现动态视频马赛克的方法及装置
技术领域
本发明涉及视频领域,尤其涉及视频动态马赛克处理领域。
背景技术
手机视频是通过手机上配置的摄像头进行拍摄而产生,由于手机的便携性,大大提高了用户使用的频度,所以有很大的市场空间。然而,拍摄后的视频往往都需要进一步的编辑、剪接或处理后方可进行合成回话。所以,用户对手机视频的再编辑有越来越多的要求。
目前存在一些视频中加入动态马赛克的技术,但大多针对计算机终端,在移动设置终端,尤其是手机终端还没有出现对视频动态马赛克处理技术,包括了:单点局部马赛克和多点局部马赛克处理技术以及整体马赛克处理技术。
发明内容
本发明是针对现有技术所存在的缺憾而提出的解决方案,能实现对视频画面任意特征点做马赛克效果。具有高效、智能、实时的特点。整个过程无需人为对视频进行二次干预。本发明基于人脸检测技术、GPU图像和视频处理技术实现。
具体而言,本发明提出了一种实现动态视频马赛克的方法,主要包括以下步骤:
S101、通过训练图集,创建特征训练数据库;
S102、创建定时器,定时抓取视频图像帧数据;
S103、对特征区域进行监测,并进行图像预处理;
S104、将预处理的图像和所述训练数据库中的图像进行匹配,从而对特征区域进行识别;
S105、将识别到的特征区域进行图像转换;
S106、根据转换后的帧数据生成视频文件。
根据本发明另一个方面,其中,在步骤S101中的所述创建特征训练数据库主要包括:先载入训练图片,并将训练图片转换为灰度图片,建立预定迭代标准,并进行PCA操作,并将操作后的训练图片都保存在向量组成的数组中,然后将每一个操作后的训练图片投影在PCA子空间上,并将结果保存在矩阵数组中,最后将训练结果保存在训练数据库中。
根据本发明另一个方面,其中,所述训练数据库为XML文件。
根据本发明另一个方面,其中,所述PCA操作进一步包括:将图像向量经过K-L变换后由高维向量转换为低维向量,并形成低维线性向量空间,然后将所述训练图片投影到该低维空间,用所得到的投影系数作为识别的特征向量。
根据本发明另一个方面,其中,步骤S103中所述图像预处理具体包括:先用边缘检测器对视频图像进行预处理,排除边缘很少或者很多的区域,因为这样的区域一般不含被检测目标。
根据本发明另一个方面,其中,步骤S104中其中将预处理的图像和训练数据库中的图像进行匹配进一步包括:在图像中移动搜索窗口,搜索窗口大小与训练图片尺寸相同,检测每一个位置来确定可能的目标;加载训练集结果XML文件,将视频图像映射至PCA子空间,利用最近距离匹配方法,来判断是否足够靠特征区域空间,从而确定是否找到所述特征区域,并得到特征区域的位置和尺寸大小。
根据本发明另一个方面,其中,步骤S105中识别到的特征区域进行图像转换进一步包括:识别到特征区域,获取特征区域的位置和尺寸,通过图形处理器渲染把所述特征区域的像素放大或者叠加一块大小相同的马赛克图层,从而实现了特征区域的马赛克效果。
此外,本发明还提出了一种实现动态视频马赛克的装置,主要包括:
视频捕获模块:用于获取视频信息;
音频捕获模块:用于获取音频信息;
数据显示模块:用于对手机终端的视频进行预览显示;
数据捕获处理模块:用于从所述视频捕获模块和音频捕获模块分别获取视频或音频信息,并对所述信息的特征区域进行识别,获取特征区域的位置和尺寸,通过图形处理器渲染,对特征区域进行马赛克处理;
视频输出模块:用于将数据捕获处理模块处理后的视频信息和音频捕获模块输出的音频信息进行合并并输出合并后的视频文件;
图像输出模块:用于输出数据捕获处理模块处理后的图片文件。
根据本发明另一个方面,其中对特征区域进行马赛克处理具体为通过图形处理器渲染把所述特征区域的像素放大或者叠加一块大小相同的马赛克图层,从而实现了特征区域的马赛克效果。
根据本发明另一个方面,其中对所述信息的特征区域进行识别具体为将预处理的图像和训练数据库中的图像进行匹配,从而对特征区域进行识别。
根据本发明另一个方面,其中将预处理的图像和训练数据库中的图像进行匹配具体为:在图像中移动搜索窗口,搜索窗口大小与训练图片尺寸相同,检测每一个位置来确定可能的目标;加载训练集结果XML文件,将视频图像映射至PCA子空间,利用最近距离匹配方法,来判断是否足够靠特征区域空间,从而确定是否找到所述特征区域,并得到特征区域的位置和尺寸大小。
本发明通过使用了GPU(图形处理器)来处理每帧视频图像,能够使得视频在加入马赛克后仍然流畅播放。有了本发明提出的技术方案,在处理视频动态多点特征马赛克的处理,并能保持流畅度,成为可能。
附图说明
下面结合附图及具体实施例对本发明再作进一步详细的说明:
附图1所示为本发明所提出的一种实现动态视频马赛克的方法流程图;
附图2所示为本发明所提出的一种实现动态视频马赛克的装置的方框图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明通过构建特征数据(例如:人脸(正脸、侧脸),眼耳口鼻,上肢或者下肢等)识别系统,通过摄像头对视频数据进行采集,利用训练好的Haar分类器,对采集的视频图像进行匹配。通过GPU图像和视频处理技术,获取每帧视频图像,对匹配特征部分进行马赛克渲染处理,最终组合成完整流畅的特效视频。
参见图1,本发明的实现动态视频马赛克的方法主要包括以下步骤:
S101:通过训练图集,创建特征训练数据库;
S102:创建定时器,定时抓取视频图像帧数据;
S103:对特征区域进行监测,并进行图像预处理;
S104:将预处理的图像和训练数据库中的图像进行匹配,从而对特征区域识别;
S105:将识别到的特征区域进行图像转换。
S106:根据转换后的帧数据生成视频文件。
其中,在步骤S101中的所述创建特征训练数据库主要包括:先载入训练图片,并将训练图片转换为灰度图片,建立预定迭代标准,并进行PCA操作,并将操作后的训练图片都保存在向量组成的数组中,然后将每一个操作后的训练图片投影在PCA子空间上,并将结果保存在矩阵数组中,最后将训练结果保存在训练数据库中。
其中,PCA操作进一步包括:将图像向量经过K-L变换后由高维向量转换为低维向量,并形成低维线性向量空间,即特征子空间,然后将所述训练图片投影到该低维空间,用所得到的投影系数作为识别的特征向量。识别所述训练图片时,只需将待识别样本的投影系数与数据库中目标样本集的投影系数进行比对,以确定与哪一类最近似。
其中,S103中所述图像预处理具体包括:先用边缘检测器对视频图像进行预处理,排除边缘很少或者很多的区域,因为这样的区域一般不含被检测目标。
其中,步骤S104中其中将预处理的图像和训练数据库中的图像进行匹配进一步包括:为了检测视频图像的特征区域,可以在图像中移动搜索窗口,搜索窗口大小与训练图片尺寸相同,检测每一个位置来确定可能的目标。加载训练集结果XML文件,将视频图像映射至PCA子空间,利用最近距离匹配方法,来判断是否足够靠近人脸空间,从而确定是否找到人脸。得到特征区域的位置和尺寸大小。
其中,步骤S105中识别到的特征区域进行图像转换进一步包括:识别到特征区域(例如人脸),获取特征区域的位置和尺寸,通过GPU(图形处理器)渲染把所述特征区域的像素放大(或者叠加一块大小相同的马赛克图层),从而实现了特征区域的马赛克效果。
参加图2,本发明提出实现动态视频马赛克的装置20,主要包括:
视频捕获模块201:用于获取视频信息;
音频捕获模块202:用于获取音频信息;
数据显示模块203:用于对手机前端的视频进行预览显示;
数据捕获处理模块204:用于从所述视频捕获模块和音频捕获模块获取视频或音频信息,并对所述信息的对特征区域进行识别,获取特征区域的位置和尺寸,通过GPU渲染,对特征区域进行马赛克处理;
视频输出模块205:用于将数据捕获处理模块处理后的视频信息和音频捕获模块输出的音频信息进行合并并输出合并后的视频文件;
图像输出模块206:用于输出数据捕获处理模块处理后的图片文件。
采用本发明的技术方案,可以在爆料题材视频中,用手机拍摄一段爆料视频,可以保护爆料者的鲜明特征,比如脸、特殊的躯体特征等,实时对特征部位进行马赛克处理,可以把爆料视频在保护爆料者前提下发布出来。或者在搞笑视频中,用手机拍摄一段搞笑的视频,又不想暴露自己的容貌,可以将脸部打上马赛克。从而实现动态视频马赛克的方法。
在移动设备上,对于视频进行每帧图像马赛克处理,效率一直是个大问题。目前更多的应用是对单张图片进行局部特征检测,而对于视频的特征检测,需要非常高效的方法,因此我们使用了GPU(图形处理器)来处理每帧视频图像,能够使得视频在加入马赛克后仍然流畅播放。有了本发明提出的技术方案,在处理视频动态多点特征马赛克的处理,并能保持流畅度,才成为可能。
综上所述,虽然本发明已以优选实施例披露如上,然而其并非用以限定本发明。本发明所属技术领域的普通技术人员,在不脱离本发明的精神和范围内,可作各种变动与修饰。因此,本发明的保护范围当视所附的权利要求所界定的范围为准。