一种基于视频帧分析的视频渲染方法及系统
技术领域
本发明属于视频处理领域,涉及视频渲染技术,具体是一种基于视频帧分析的视频渲染方法及系统。
背景技术
在计算机上播放和录制视频,可以将家庭电影复制到计算机,使用视频和音频剪贴工具进行编辑、剪辑、增加一些很普通的特效效果,使视频可观赏性增强,称之为视频处理。
当前视频在进行渲染处理时,通常采用统一的渲染方式和渲染标准,没有对视频文件进行分析或没有对视频文件中的某一帧视频图片进行分析;
为此,我们提出一种基于视频帧分析的视频渲染方法及系统。
发明内容
本发明的目的在于:为了解决上述问题,而提出的一种基于视频帧分析的视频渲染方法及系统,以解决上述背景技术中提出的视频文件渲染处理采用统一的渲染方式和渲染标准的问题。
本发明的目的可以通过以下技术方案实现:
第一方面,一种基于视频帧分析的视频渲染方法,视频渲染方法具体如下:
步骤S10,用户终端上传视频样本文件以及视频样本文件的预设视频参数,视频样本文件经服务器发送至智能抽帧模块;
步骤S20,参数判定模块对视频样本文件的视频参数进行判定,生成视频正常信号或视频抽帧信号,若生成视频抽帧信号则发送至智能抽帧模块;
步骤S30,智能抽帧模块将视频样本文件转化为若干帧视频图片,数据采集模块采集不同视频图片的实时图片参数经服务器发送至图片比对模块;
步骤S40,存储模块将视频样本文件对应视频图片的预设图片参数,发送至图像比对模块,图片比对模块对视频图片的图片数据进行比对,得到图片正常信号分辨率异常集或颜色异常集,若得到分辨率异常集或颜色异常集则发送至渲染设定模块;
步骤S50,渲染设定模块对视频样本文件的渲染力度进行设定,得到视频样本文件的渲染等级,依据渲染等级设定视频样本文件的渲染参数并发送至智能渲染模块,智能渲染模块依据渲染参数对视频样本文件进行渲染。
进一步地,预设视频参数为视频样本文件的位率区间、分辨率区间和帧率区间;
实时视频参数为视频样本文件在不同时间段内的实时位率、实时分辨率和实时帧率;
实时图片参数为视频样本文件中不同视频图片的实时图片分辨率和实时图片颜色;
预设图片参数为视频样本文件对应视频图片的预设图片分辨率和预设图片颜色。
进一步地,所述参数判定模块的判定过程具体如下:
将视频样本文件依据时间轴切割为多个视频段;
获取不同视频段的实时视频参数,得到多个视频段的实时位率、实时分辨率和实时帧率;
若所有视频段的实时位率处于位率区间、实时分辨率处于分辨率区间和实时帧率处于帧率区间,则生成视频正常信号;
若任一视频段的实时位率不处于位率区间、实时分辨率不处于分辨率区间或实时帧率不处于帧率区间,则生成视频抽帧信号。
进一步地,所述图片比对模块的比对过程具体如下:
获取视频样本文件中不同视频图片的实时图片分辨率;
将视频图片的实时图片分辨率与对应视频图片的预设图片分辨率进行比对;
若实时图片分辨率与预设图片分辨率相同,则进入下一步骤,若实时图片分辨率与预设图片分辨率不相同,则将视频图片归纳至分辨率异常集;
将视频图片分割为若干个实时方片格,同理,将存储模块中视频样本文件对应的同一张视频图片分割为若干个预设方片格;
选取相同位置坐标的实时方片格与预设方片格进行比对;
统计实时方片格和预设方片格中所有颜色的像素点,若实时方片格中任一颜色像素点的数量与预设方片格中对应颜色像素点的数量不相等,则将视频图片归纳至颜色异常集,若实时方片格中所有颜色像素点的数量与预设方片格对应颜色像素点的数量均相等,则继续比对,直至所有实时方片格中不同颜色像素点的数量与预设方片格对应颜色像素点的数量均相等,则生成图片正常信号。
进一步地,所述渲染设定模块的设定过程具体如下:
分别获取分辨率异常集和颜色异常集中视频图片的数量,并记为异常视频图片数;
若异常视频图片数小于第一张数阈值,则视频样本文件的渲染等级为第三渲染等级;
若异常视频图片数大于等于第一张数阈值且小于第二张数阈值,则视频样本文件的渲染等级为第二渲染等级;
若异常视频图片数大于等于第二张数阈值,则视频样本文件的渲染等级为第一渲染等级;其中,第二张数阈值的取值大于第一张数阈值的取值。
进一步地,第三渲染等级的渲染力度小于第二渲染等级的渲染力度,第二渲染等级的渲染力度小于第一渲染等级的渲染力度。
进一步地,渲染参数包括渲染次数和渲染时长;
渲染等级与渲染参数的对比关系为:
第一渲染等级的渲染参数为:第三渲染次数和第一渲染时长;
第二渲染等级的渲染参数为:第二渲染次数和第二渲染时长;
第三渲染等级的渲染参数为:第一渲染次数和第三渲染时长。
进一步地,第一渲染次数小于第二渲染次数,第二渲染次数小于第三渲染次数;
第一渲染时长小于第二渲染时长,第二渲染时长小于第三渲染时长。
第二方面,一种基于视频帧分析的视频渲染系统,包括智能渲染模块、智能抽帧模块、参数判定模块、用户终端、渲染设定模块、存储模块、图像比对模块、数据采集模块以及服务器;
所述用户终端用于工作人员上传视频样本文件以及视频样本文件的预设视频参数,视频样本文件经服务器发送至智能抽帧模块;
所述参数判定模块用于对视频样本文件的视频参数进行判定,得到视频正常信号或视频抽帧信号;
所述存储模块用于存储不同视频样本文件对应视频图片的预设图片参数,并将预设图片参数发送至图像比对模块;
所述图片比对模块用于对视频图片的图片数据进行比对,得到图片正常信号、分辨率异常集或颜色异常集;
所述渲染设定模块用于对视频样本文件的渲染力度进行设定,得到视频样本文件的渲染等级反馈至服务器;
服务器依据渲染等级设定视频样本文件的渲染参数并发送至智能渲染模块;
所述智能渲染模块用于依据渲染参数用于对视频样本文件进行渲染,并将渲染后的视频样本文件经服务器发送至用户终端。
综上所述,由于采用了上述技术方案,本发明的有益效果是:
本发明通过用户终端上传视频样本文件以及视频样本文件的预设视频参数,参数判定模块对视频样本文件的视频参数进行判定,生成视频正常信号或视频抽帧信号,若生成视频抽帧信号则发送至智能抽帧模块,智能抽帧模块将视频样本文件转化为若干帧视频图片,数据采集模块采集不同视频图片的实时图片参数经服务器发送至图片比对模块,图片比对模块对视频图片的图片数据进行比对,得到图片正常信号分辨率异常集或颜色异常集,若得到分辨率异常集或颜色异常集则发送至渲染设定模块,渲染设定模块对视频样本文件的渲染力度进行设定,得到视频样本文件的渲染等级,依据渲染等级设定视频样本文件的渲染参数并发送至智能渲染模块,智能渲染模块依据渲染参数对视频样本文件进行渲染,本发明基于视频文件的分析结果实现对视频文件的适配渲染。
附图说明
为了便于本领域技术人员理解,下面结合附图对本发明作进一步的说明。
图1为本发明的方法流程图;
图2为本发明的整体系统框图。
具体实施方式
下面将结合实施例对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
实施例1:请参阅图1,本发明提供一种基于视频帧分析的视频渲染方法,视频渲染方法具体如下:
步骤S10,用户终端上传视频样本文件以及视频样本文件的预设视频参数,并将视频样本文件以及视频样本文件的预设视频参数发送至服务器,服务器将视频样本文件发送至智能抽帧模块;
步骤S20,参数判定模块对视频样本文件的视频参数进行判定,将视频样本文件依据时间轴切割为多个视频段,获取不同视频段的实时视频参数,得到多个视频段的实时位率、实时分辨率和实时帧率,若所有视频段的实时位率处于位率区间、实时分辨率处于分辨率区间和实时帧率处于帧率区间,则生成视频正常信号,若任一视频段的实时位率不处于位率区间、实时分辨率不处于分辨率区间或实时帧率不处于帧率区间,则生成视频抽帧信号,参数判定模块将视频正常信号或视频抽帧信号反馈至服务器,若服务器接收到视频正常信号,则不进行任何操作,若服务器接收到视频抽帧信号,则将视频抽帧信号发送至智能抽帧模块;
步骤S30,智能抽帧模块将视频样本文件转化为若干帧视频图片,并将视频图片发送至服务器,数据采集模块采集不同视频图片的实时图片参数,并将实时图片参数并将发送至服务器,服务器将实时图片参数发送至图片比对模块;
步骤S40,存储模块存储不同视频样本文件对应视频图片的预设图片参数,并将预设图片参数发送至图像比对模块,图片比对模块对视频图片的图片数据进行比对,获取视频样本文件中不同视频图片的实时图片分辨率,将视频图片的实时图片分辨率与对应视频图片的预设图片分辨率进行比对,若实时图片分辨率与预设图片分辨率不相同,则将视频图片归纳至分辨率异常集,若实时图片分辨率与预设图片分辨率相同,则将视频图片分割为若干个实时方片格,同理,将存储模块中视频样本文件对应的同一张视频图片分割为若干个预设方片格,选取相同位置坐标的实时方片格与预设方片格进行比对,统计实时方片格和预设方片格中所有颜色的像素点,若实时方片格中任一颜色像素点的数量与预设方片格中对应颜色像素点的数量不相等,则将视频图片归纳至颜色异常集,若实时方片格中所有颜色像素点的数量与预设方片格对应颜色像素点的数量均相等,则继续比对,直至所有实时方片格中不同颜色像素点的数量与预设方片格对应颜色像素点的数量均相等,则生成图片正常信号,图片比对模块将图片正常信号、分辨率异常集或颜色异常集反馈至服务器,若服务器接收到图片正常信号,则不进行任何操作,若服务器接收到分辨率异常集或颜色异常集,则将分辨率异常集或颜色异常集发送至渲染设定模块;
步骤S50,渲染设定模块对视频样本文件的渲染力度进行设定,分别获取分辨率异常集和颜色异常集中视频图片的数量,并记为异常视频图片数,若异常视频图片数小于第一张数阈值,则视频样本文件的渲染等级为第三渲染等级,若异常视频图片数大于等于第一张数阈值且小于第二张数阈值,则视频样本文件的渲染等级为第二渲染等级,若异常视频图片数大于等于第二张数阈值,则视频样本文件的渲染等级为第一渲染等级,渲染设定模块将视频样本文件的渲染等级反馈至服务器,服务器依据渲染等级设定视频样本文件的渲染参数,并将视频样本文件的渲染参数发送至智能渲染模块,智能渲染模块用于依据渲染参数对视频样本文件进行渲染,并将渲染后的视频样本文件经服务器发送至用户终端;
在本申请中,若出现相应的计算公式,则上述计算公式均是去量纲取其数值计算,公式中存在的权重系数、比例系数等系数,其设置的大小是为了将各个参数进行量化得到的一个结果值,关于权重系数和比例系数的大小,只要不影响参数与结果值的比例关系即可。
实施例2:请参阅图2,基于同一发明的又一构思,现提出一种基于视频帧分析的视频渲染系统,包括智能渲染模块、智能抽帧模块、参数判定模块、用户终端、渲染设定模块、存储模块、图像比对模块、数据采集模块以及服务器;
在本实施例中,所述用户终端用于工作人员上传视频样本文件以及视频样本文件的预设视频参数,并将视频样本文件以及视频样本文件的预设视频参数发送至服务器,所述服务器将视频样本文件发送至智能抽帧模块;
需要具体说明的是,预设视频参数为视频样本文件的位率区间、分辨率区间和帧率区间;
实际的,视频样本文件通过视频播放工具进行播放,在视频样本文件进行播放时,所述数据采集模块用于采集视频样本文件的实时视频参数,并将实时视频参数发送至服务器,所述服务器将实时视频参数发送至参数判定模块;
需要具体说明的是,实时视频参数为视频样本文件在不同时间段内的实时位率、实时分辨率和实时帧率,实际的,可以通过FFmpeg提取视频帧的基本命令获取视频样本文件的帧率;
所述参数判定模块用于对视频样本文件的视频参数进行判定,判定过程具体如下:
将视频样本文件依据时间轴切割为多个视频段;
获取不同视频段的实时视频参数,得到多个视频段的实时位率、实时分辨率和实时帧率;
若所有视频段的实时位率处于位率区间、实时分辨率处于分辨率区间和实时帧率处于帧率区间,则生成视频正常信号;
若任一视频段的实时位率不处于位率区间、实时分辨率不处于分辨率区间或实时帧率不处于帧率区间,则生成视频抽帧信号;
所述参数判定模块将视频正常信号或视频抽帧信号反馈至服务器,若服务器接收到视频正常信号,则不进行任何操作,若服务器接收到视频抽帧信号,则将视频抽帧信号发送至智能抽帧模块;所述智能抽帧模块用于将视频样本文件转化为若干帧视频图片,并将视频图片发送至服务器,所述数据采集模块用于采集不同视频图片的实时图片参数,并将实时图片参数并将发送至服务器,所述服务器将实时图片参数发送至图片比对模块;
需要具体说明的是,实时图片参数为视频样本文件中不同视频图片的实时图片分辨率和实时图片颜色;
实际的,视频样本文件转化为图片的方式包括:利用VideoCapture类对视频进行读取,逐帧读取并存储图片;或者利用opencv中的VideoWriter类将图片写入视频文件,以实现图片分割;还可以利用ffmpeg库函数将视频中的每一帧提取出来,存储为图片;利用Qt中的QImage类,读取视频文件,从中取出每一帧图片;
所述存储模块用于存储不同视频样本文件对应视频图片的预设图片参数,并将预设图片参数发送至图像比对模块,其中,预设图片参数为视频样本文件对应视频图片的预设图片分辨率和预设图片颜色,所述图片比对模块用于对视频图片的图片数据进行比对,比对过程具体如下:
获取视频样本文件中不同视频图片的实时图片分辨率;
将视频图片的实时图片分辨率与对应视频图片的预设图片分辨率进行比对;
若实时图片分辨率与预设图片分辨率相同,则进入下一步骤,若实时图片分辨率与预设图片分辨率不相同,则将视频图片归纳至分辨率异常集;
将视频图片分割为若干个实时方片格,同理,将存储模块中视频样本文件对应的同一张视频图片分割为若干个预设方片格;
选取相同位置坐标的实时方片格与预设方片格进行比对;
统计实时方片格和预设方片格中所有颜色的像素点,若实时方片格中任一颜色像素点的数量与预设方片格中对应颜色像素点的数量不相等,则将视频图片归纳至颜色异常集,若实时方片格中所有颜色像素点的数量与预设方片格对应颜色像素点的数量均相等,则继续比对,直至所有实时方片格中不同颜色像素点的数量与预设方片格对应颜色像素点的数量均相等,则生成图片正常信号;
所述图片比对模块将图片正常信号、分辨率异常集或颜色异常集反馈至服务器,若服务器接收到图片正常信号,则不进行任何操作,若服务器接收到分辨率异常集或颜色异常集,则将分辨率异常集或颜色异常集发送至渲染设定模块;
所述渲染设定模块用于对视频样本文件的渲染力度进行设定,设定过程具体如下:
分别获取分辨率异常集和颜色异常集中视频图片的数量,并记为异常视频图片数;
若异常视频图片数小于第一张数阈值,则视频样本文件的渲染等级为第三渲染等级;
若异常视频图片数大于等于第一张数阈值且小于第二张数阈值,则视频样本文件的渲染等级为第二渲染等级;
若异常视频图片数大于等于第二张数阈值,则视频样本文件的渲染等级为第一渲染等级;其中,第二张数阈值的取值大于第一张数阈值的取值;
可理解的是,第三渲染等级的渲染力度小于第二渲染等级的渲染力度,第二渲染等级的渲染力度小于第一渲染等级的渲染力度;
所述渲染设定模块将视频样本文件的渲染等级反馈至服务器,服务器依据渲染等级设定视频样本文件的渲染参数,并将视频样本文件的渲染参数发送至智能渲染模块,渲染参数包括渲染次数和渲染时长;
其中,渲染等级与渲染参数的对比关系为:
第一渲染等级的渲染参数为:第三渲染次数和第一渲染时长;
第二渲染等级的渲染参数为:第二渲染次数和第二渲染时长;
第三渲染等级的渲染参数为:第一渲染次数和第三渲染时长;
其中,第一渲染次数小于第二渲染次数,第二渲染次数小于第三渲染次数,第一渲染时长小于第二渲染时长,第二渲染时长小于第三渲染时长;
所述智能渲染模块用于依据渲染参数用于对视频样本文件进行渲染,并将渲染后的视频样本文件反馈至服务器,所述服务器将渲染后的视频样本文件发送至用户终端,具体的,智能渲染模块可以为视频混合渲染器等相关设备。
以上公开的本发明优选实施例只是用于帮助阐述本发明。优选实施例并没有详尽叙述所有的细节,也不限制该发明仅为的具体实施方式。显然,根据本说明书的内容,可作很多的修改和变化。本说明书选取并具体描述这些实施例,是为了更好地解释本发明的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本发明。本发明仅受权利要求书及其全部范围和等效物的限制。