一种船用监控视频画面去抖方法、装置以及存储介质与流程

文档序号:28375557发布日期:2022-01-07 21:41阅读:182来源:国知局
一种船用监控视频画面去抖方法、装置以及存储介质与流程

1.本发明主要涉及图像处理技术领域,具体涉及一种船用监控视频画面去抖方法、装置以及存储介质。


背景技术:

2.在船用的视频监视系统中,由于船体共振、海浪冲击等因素造成船上固定安装的摄像机发生震动,导致采集的视频画面出现抖动模糊的现象,影响观看效果,要解决这个问题可通过硬件和软件的方式。硬件的方式是加装市面上的各类稳定器设备,存在着成本较高、安全性较差、安装不便等问题,并不适合船用视频监视系统;软件的方式则是将抖动画面经过计算机图像处理的方法,把抖动的画面进行自动变换补偿,从而在视觉上达到视频去抖的效果。但目前已有的软件去抖技术存在几个问题,一是计算量大,对计算机硬件要求过高,难以满足实时视频处理的效果;二是去抖的处理效果不理想,处理后的视频仍然模糊。


技术实现要素:

3.本发明所要解决的技术问题是针对现有技术的不足,提供一种船用监控视频画面去抖方法、装置以及存储介质。
4.本发明解决上述技术问题的技术方案如下:一种船用监控视频画面去抖方法,包括如下步骤:
5.导入视频数据,所述视频数据包括多个待处理视频帧图像,并对多个所述待处理视频帧图像进行预处理,得到参考帧图像和多个视频帧图像;
6.对所述参考帧图像和多个所述视频帧图像进行偏移向量的分析,得到与各个所述视频帧图像对应的偏移向量;
7.通过各个所述偏移向量构建与各个所述视频帧图像对应的透视投影矩阵;
8.根据各个所述透视投影矩阵分别对各个所述视频帧图像进行渲染变换补偿,得到与各个所述视频帧图像对应的去抖视频画面。
9.本发明解决上述技术问题的另一技术方案如下:一种船用监控视频画面去抖装置,包括:
10.图像预处理模块,用于导入视频数据,所述视频数据包括多个待处理视频帧图像,并对多个所述待处理视频帧图像视频图像进行预处理,得到参考帧图像和多个视频帧图像;
11.偏移向量分析模块,用于对所述参考帧图像和多个所述视频帧图像进行偏移向量的分析,得到与各个所述视频帧图像对应的偏移向量;
12.矩阵构建模块,用于通过各个所述偏移向量构建与各个所述视频帧图像对应的透视投影矩阵;
13.去抖视频图像获得模块,用于根据各个所述透视投影矩阵分别对各个所述视频帧
图像进行渲染变换补偿,得到与各个所述视频帧图像对应的去抖视频画面。
14.本发明解决上述技术问题的另一技术方案如下:一种船用监控视频画面去抖装置,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,当所述处理器执行所述计算机程序时,实现如上所述的船用监控视频画面去抖方法。
15.本发明解决上述技术问题的另一技术方案如下:一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,当所述计算机程序被处理器执行时,实现如上所述的船用监控视频画面去抖方法。
16.本发明的有益效果是:通过对多个待处理视频帧图像的预处理得到参考帧图像和多个视频帧图像,对参考帧图像和多个视频帧图像的偏移向量分析得到偏移向量,通过各个偏移向量构建透视投影矩阵,根据各个透视投影矩阵分别对各个视频帧图像的渲染变换补偿得到去抖视频画面,解决了当前软件去抖技术存在的计算速度慢、去抖效果不理想的瓶颈问题,从而达到使用性能较低的计算机也能实现实时视频去抖的效果,也提升了去抖效果,增强了处理后视频的清晰度。
附图说明
17.图1为本发明实施例提供的一种船用监控视频画面去抖方法的流程示意图;
18.图2为本发明实施例提供的一种船用监控视频画面去抖装置的模块框图。
具体实施方式
19.以下结合附图对本发明的原理和特征进行描述,所举实例只用于解释本发明,并非用于限定本发明的范围。
20.图1为本发明实施例提供的一种船用监控视频画面去抖方法的流程示意图。
21.如图1所示,一种船用监控视频画面去抖方法,包括如下步骤:
22.导入视频数据,所述视频数据包括多个待处理视频帧图像,并对多个所述待处理视频帧图像进行预处理,得到参考帧图像和多个视频帧图像;
23.对所述参考帧图像和多个所述视频帧图像进行偏移向量的分析,得到与各个所述视频帧图像对应的偏移向量;
24.通过各个所述偏移向量构建与各个所述视频帧图像对应的透视投影矩阵;
25.根据各个所述透视投影矩阵分别对各个所述视频帧图像进行渲染变换补偿,得到与各个所述视频帧图像对应的去抖视频画面。
26.上述实施例中,通过对多个待处理视频帧图像的预处理得到参考帧图像和多个视频帧图像,对参考帧图像和多个视频帧图像的偏移向量分析得到偏移向量,通过各个偏移向量构建透视投影矩阵,根据各个透视投影矩阵分别对各个视频帧图像的渲染变换补偿得到去抖视频画面,解决了当前软件去抖技术存在的计算速度慢、去抖效果不理想的瓶颈问题,从而达到使用性能较低的计算机也能实现实时视频去抖的效果,也提升了去抖效果,增强了处理后视频的清晰度。
27.可选地,作为本发明的一个实施例,多个所述待处理视频帧图像顺序排列,所述对多个所述待处理视频帧图像进行预处理,得到参考帧图像和多个视频帧图像的过程包括:
28.以设定格式分别对各个所述待处理视频帧图像进行图像格式转换,得到与各个所
述待处理视频帧图像对应的转换后的图像;
29.分别对所述转换后的图像进行比例缩放,得到与各个所述视频图像对应的缩放后的图像;
30.分别对所述缩放后的图像进行灰度转换,得到与各个所述视频图像对应的视频帧图像,并将首个视频帧图像作为参考帧图像。
31.应理解地,所述参考帧图像用于特征点的定位,作为后续帧计算运动量变化的参考。
32.应理解地,所述设定格式为bgr24格式,即将所述待处理视频帧图像的yuv格式转换为rgb格式,用于后续的图像处理,而bgr24格式属于rgb格式的一种。
33.应理解地,采集到实时视频图像数据(即所述待处理视频帧图像)后,将每一帧采集到的图像(即所述待处理视频帧图像)转换为bgr24格式,并进行1/4比例缩放及灰度转换得到多个图像数据(即所述视频帧图像);并将第1帧图像数据(即所述视频帧图像)放入内存,作为去抖的参考帧(即所述参考帧图像)。
34.上述实施例中,以设定格式分别对各个待处理视频帧图像的图像格式转换得到转换后的图像,分别对转换后的图像的比例缩放得到缩放后的图像,分别对缩放后的图像的灰度转换得到视频帧图像,并将首个视频帧图像作为参考帧图像,为后续处理提供精准的数据,提升了去抖效果,增强了处理后视频的清晰度,从而达到使用性能较低的计算机也能实现实时视频去抖的目的。
35.可选地,作为本发明的一个实施例,所述对所述参考帧图像和多个所述视频帧图像进行偏移向量的分析,得到与各个所述视频帧图像对应的偏移向量的过程包括:
36.对所述参考帧图像进行特征点的定位,得到多个参考特征点,并集合所有的参考特征点得到全局特征点;
37.通过金字塔光流法和所述参考帧图像对多个所述视频帧图像以及所述全局特征点进行特征点迭代计算,得到与各个所述视频帧图像对应的多个偏移量,并分别集合与各个所述视频帧图像对应的多个偏移量,得到与各个所述视频帧图像对应的偏移向量。
38.应理解地,所述全局特征点后续会对每个特征点(即所述参考特征点)进行估计跟踪。
39.应理解地,所述金字塔光流法,即卢卡斯卡纳德方法,也叫做金字塔光流法,广泛使用的光流估计的差分方法,它假设在像素点的领域是一个常数,然后使用最小平方法对邻域中的所有像素点求解基本的光流方程。
40.具体地,对参考帧(即所述参考帧图像)进行100-200个goodfeatures特征点的定位,后续的每一帧图像将对这些特征点(即所述参考特征点)进行跟踪,特征点(即所述参考特征点)按照指定的规则获取,并将所有特征点计入全局特征点;根据改进光流法(即所述金字塔光流法)建立lk光流金字塔,并把前一帧的全局特征点放入金字塔最底层(即仅是把得到的特征点集合(即所述全局特征点)送入光流金字塔底层,也就是作为输入数据)。
41.应理解地,对所述参考帧图像进行特征点的定位用于后续每一帧的跟踪;指定规则具体是先随机获取若干点,再筛选出至少100、至多200个对四周相邻灰度值相差超过一定范围的点作为满足要求的特征点(即所述参考特征点)。
42.应理解地,将完成特征点定位的前后两帧图像(即所述参考帧图像和/或所述视频
帧图像)送入lk光流金字塔进行特征点迭代计算,将第4层为金字塔顶层,经过4次迭代后得到相邻帧的pointtrack偏移向量作为全局运动量(即所述偏移向量)。
43.应理解地,使用所述全局特征点,通过金字塔光流法进行4次迭代计算,根据相邻帧图像亮度变化微小且内容位移小的特性,得出前后两帧图像对所有特征点的偏移量(即所述偏移向量)。这里的pointtrack偏移向量是指所有相对参考帧的特征点发生偏移后偏移向量的集合,用于下一步获取投影变换矩阵。
44.上述实施例中,对参考帧图像的特征点定位得到全局特征点,通过金字塔光流法和参考帧图像对多个视频帧图像以及全局特征点的特征点迭代计算得到偏移向量,在后续可以对每一帧进行跟踪,从而确保了每一帧图像的清晰度,从而达到使用性能较低的计算机也能实现实时视频去抖的目的。
45.可选地,作为本发明的一个实施例,所述通过各个所述偏移向量构建与各个所述视频帧图像对应的透视投影矩阵的过程包括:
46.利用matrix3d矩阵工具分别对各个所述偏移向量进行矩形构造,得到与各个所述视频帧图像对应的第一同型矩阵和与各个所述视频帧图像对应的第二同型矩阵;
47.按照预设初始缩放比例分别对各个所述第一同型矩阵和各个所述第二同型矩阵进行还原,得到与各个所述视频帧图像对应的还原后第一同型矩阵和与各个所述视频帧图像对应的还原后第二同型矩阵;
48.分别对各个所述还原后第一同型矩阵和各个所述还原后第二同型矩阵继续能进行循环相减的转换,得到与各个所述视频帧图像对应的相对偏移矩阵;
49.导入初始缩放比例,通过所述初始缩放比例分别对各个所述相对偏移矩阵进行偏移值的分析,得到与各个所述视频帧图像对应的透视投影矩阵。
50.优选地,所述初始缩放比例可以为原始缩放比例的90%。
51.应理解地,所述matrix3d矩阵工具,即matrix3d工具类,表示一个转换矩阵,该矩阵确定三维(3d)显示对象的位置和方向。该矩阵可以执行转换功能,包括平移(沿x、y和z轴重新定位)、旋转和缩放(调整大小)。matrix3d类还可以执行透视投影,这会将3d坐标空间中的点映射到二维(2d)视图。
52.应理解地,根据将相邻帧的偏移向量计算图像缩放矩阵zoomer;再将两个缩放矩阵的变倍比例构造为同态矩阵;最后按原1/4缩放比例补偿后,可获得图像变换产生的角度、变倍数及xyz轴的位移差参数,最后将其转换为透视投影矩阵。
53.具体地,将全局运动量(即所述偏移向量)放入matrix3d矩阵工具,构造出同型矩阵h1(即所述第一同型矩阵)及同型矩阵h2(即所述第二同型矩阵),按原1/4缩放比例对矩阵(即所述第一同型矩阵和所述第二同型矩阵)进行还原后,通过将同型矩阵h1(即所述还原后第一同型矩阵)与同型矩阵h2(即所述还原后第二同型矩阵)进行循环相减转换成相对偏移矩阵h,设置默认缩放比例zoom(即所述初始缩放比例)为原始缩放比例的90%,通过计算可获得当前帧的角度偏移值、xyz轴偏移值。
54.上述实施例中,通过各个偏移向量构建与各个视频帧图像对应的透视投影矩阵,解决了当前软件去抖技术存在的计算速度慢、去抖效果不理想的瓶颈问题,从而达到使用性能较低的计算机也能实现实时视频去抖的效果,也提升了去抖效果,增强了处理后视频的清晰度。
55.可选地,作为本发明的一个实施例,所述通过所述初始缩放比例分别对各个所述相对偏移矩阵进行偏移值的分析,得到与各个所述视频帧图像对应的透视投影矩阵的过程包括:
56.通过第一式分别计算各个所述相对偏移矩阵的角度偏移值,得到与各个所述视频帧图像对应的角度偏移值,所述第一式为:
57.△
θ=arcsin(h(0,1))*180.f/pi,
58.其中,

θ为角度偏移值,f为浮点,pi为π,h(0,1)为相对偏移矩阵的第0行第1列;
59.通过第二式和所述初始缩放比例分别计算各个所述相对偏移矩阵的x轴偏移值,得到与各个所述视频帧图像对应的x轴偏移值,所述第二式为:
60.△
x=-h(0,2)*zoom,
61.其中,

x为x轴偏移值,zoom为初始缩放比例,h(0,2)为相对偏移矩阵的第0行第2列;
62.通过第三式和所述初始缩放比例分别计算各个所述相对偏移矩阵的y轴偏移值,得到与各个所述视频帧图像对应的y轴偏移值,所述第三式为:
63.△
y=-h(1,2)*zoom,
64.其中,

y为y轴偏移值,zoom为初始缩放比例,h(1,2)为相对偏移矩阵的第1行第2列;
65.通过第四式和所述初始缩放比例分别计算各个所述相对偏移矩阵的z轴偏移值,得到与各个所述视频帧图像对应的z轴偏移值,所述第四式为:
66.△
z=-h(2,2)*zoom,
67.其中,

z为z轴偏移值,zoom为初始缩放比例,h(2,2)为相对偏移矩阵的第2行第2列;
68.判断是否满足条件,所述条件包括当前视频帧图像对应的所述角度偏移值与上一视频帧图像对应的所述角度偏移值的差值大于或等于预设角度偏移阈值,且满足当前视频帧图像对应的所述x轴偏移值与上一视频帧图像对应的所述x轴偏移值的差值大于或等于预设x轴偏移阈值,且满足当前视频帧图像对应的所述y轴偏移值与上一视频帧图像对应的所述y轴偏移值的差值大于或等于预设y轴偏移阈值,且满足当前视频帧图像对应的所述z轴偏移值与上一视频帧图像对应的所述z轴偏移值的差值大于或等于预设z轴偏移阈值,
69.若同时满足条件,则根据预设第一修改值对所述初始缩放比例进行反向修改,得到第一缩放比例,并将所述第一缩放比例作为修改后的缩放比例;
70.若任一条件不满足,则根据预设第二修改值对所述初始缩放比例进行修改,得到第二缩放比例,并将所述第二缩放比例作为所述修改后的缩放比例;
71.对各个所述角度偏移值、所述x轴偏移值、所述y轴偏移值、所述z轴偏移值和所述修改后的缩放比例进行矩阵的转换,得到与各个所述视频帧图像对应的透视投影矩阵。
72.应理解地,为了减少变换补偿移动时图像四周产生的黑边,而按一定比例进行图像缩放效果。默认设置为90%的缩放比例,当计算出的角度、xyz轴位移差变化发生突然变大或变小时进行缩放比例修改,而上述变化趋于平缓时将缩放比率逐帧递增或递减至90%。
73.应理解地,当计算出的角度偏移值、xyz轴偏移值与上一帧相比发生突然化时,按
照预设修改值(即所述预设第一修改值)将缩放比例zoom值(即所述初始缩放比例)进行反向修改,而变化趋于平缓时将缩放比率(即所述初始缩放比例)逐帧+1或-1的方式修改回90%,最后将角度偏移值、xyz轴偏移值、zoom值(即所述修改后的缩放比例)按照透视投影的规则转换为与每一帧对应的透视投影矩阵。
74.上述实施例中,通过初始缩放比例分别对各个相对偏移矩阵的偏移值分析得到透视投影矩阵,减少了变换补偿移动时图像四周产生的黑边,解决了当前软件去抖技术存在的计算速度慢、去抖效果不理想的瓶颈问题,从而达到使用性能较低的计算机也能实现实时视频去抖的效果,也提升了去抖效果,增强了处理后视频的清晰度。
75.可选地,作为本发明的一个实施例,所述根据各个所述透视投影矩阵分别对各个所述视频帧图像进行渲染变换补偿,得到与各个所述视频帧图像对应的去抖视频画面的过程包括:
76.根据各个所述透视投影矩阵分别对各个所述视频帧图像进行透视变换,得到与所述视频帧图像对应的变换后图像;
77.分别对各个所述变换后图像进行渲染,得到与各个所述视频帧图像对应的去抖视频画面。
78.应理解地,使用顶点着色器作为渲染工具,在获取到透视投影矩阵后,将原图像(即所述视频帧图像)根据透视投影矩阵进行透视变换处理,再将变换后的图像数据(即所述变换后图像)进行渲染,即可得到补偿后的去抖视频图像(即所述去抖视频画面)。
79.上述实施例中,通过各个透视投影矩阵分别对各个视频帧图像的透视变换得到变换后图像,分别对各个变换后图像的渲染得到去抖视频画面,实现了对船用视频监视系统中摄像机采集到抖动模糊的实时视频的自动去抖处理,且实现了40ms内快速处理帧图像,同时也使画面输出清晰稳定。
80.图2为本发明实施例提供的一种船用监控视频画面去抖装置的模块框图。
81.可选地,作为本发明的另一个实施例,如图2所示,一种船用监控视频画面去抖装置,包括:
82.图像预处理模块,用于导入视频数据,所述视频数据包括多个待处理视频帧图像,并对多个所述待处理视频帧图像视频图像进行预处理,得到参考帧图像和多个视频帧图像;
83.偏移向量分析模块,用于对所述参考帧图像和多个所述视频帧图像进行偏移向量的分析,得到与各个所述视频帧图像对应的偏移向量;
84.矩阵构建模块,用于通过各个所述偏移向量构建与各个所述视频帧图像对应的透视投影矩阵;
85.去抖视频图像获得模块,用于根据各个所述透视投影矩阵分别对各个所述视频帧图像进行渲染变换补偿,得到与各个所述视频帧图像对应的去抖视频画面。
86.可选地,作为本发明的一个实施例,多个所述待处理视频帧图像顺序排列,所述图像预处理模块具体用于:
87.以设定格式分别对各个所述待处理视频帧图像进行图像格式转换,得到与各个所述待处理视频帧图像对应的转换后的图像;
88.分别对所述转换后的图像进行比例缩放,得到与各个所述视频图像对应的缩放后
的图像;
89.分别对所述缩放后的图像进行灰度转换,得到与各个所述视频图像对应的视频帧图像,并将首个视频帧图像作为参考帧图像。
90.可选地,本发明的另一个实施例提供一种船用监控视频画面去抖装置,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,当所述处理器执行所述计算机程序时,实现如上所述的船用监控视频画面去抖方法。该装置可为计算机等装置。
91.可选地,本发明的另一个实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,当所述计算机程序被处理器执行时,实现如上所述的船用监控视频画面去抖方法。
92.需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。
93.所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
94.在本技术所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。
95.作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本发明实施例方案的目的。
96.另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
97.集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
98.以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1