1.本发明涉及计算机视觉研究技术领域,尤其涉及一种视频去运动模糊方法、装置、终端设备及可读存储介质。
背景技术:
2.在快消行业中,业务员为了记录店摆放的商品信息往往需要拍摄视频,由于拍摄抖动以及拍摄移速不均衡往往使视频产生运动模糊,从而影响后续查看和识别。传统的去模糊方法主要包括非盲去模糊和盲去模糊,然而基于最大后验概率的盲去卷积算法的效果差,非盲去卷积则需要手动调参数无法完成自动化处理;采用多尺度的变分贝叶斯算法估计模糊核去模糊的方法复杂度较高、运行速度慢,因此无法达到实时性要求,同时还需要用户手动引导选择小的图像块;而基于深度学习的方法虽然效果好,但是对硬件要求高,无法满足前端轻量级算法处理的需求。
技术实现要素:
3.本发明的目的在于提供一种视频去运动模糊方法、装置、终端设备及可读存储介质,以解决现有技术中视频去运动模糊方法中存在的效果差、自动化程度低、复杂度高及成本高的问题。
4.为实现上述目的,本发明提供一种视频去运动模糊方法,包括:对待处理的视频进行解码,提取解码后的视频帧的特征点,并利用knn算法对所述特征点进行特征匹配;根据特征匹配结果,利用循环迭代算法计算目标匹配点集;根据所述目标匹配点集计算相机的移动角度;利用模糊半径及所述移动角度计算对应的运动模糊核,并计算根据所述运动模糊核得到的还原图片的模糊度;重复计算所述运动模糊核,当模糊半径小于或等于第一预设阈值时,将模糊半径增加预设值后代入计算;当所述模糊半径大于所述第一预设阈值时,输出最小的模糊度所对应的还原图片。
5.进一步地,所述提取解码后的视频帧的特征点,包括:提取所述视频帧的前后帧视频的orb特征点。
6.进一步地,在所述提取解码后的视频帧的特征点之前,还包括对前后帧视频对应的图片进行去灰度处理。
7.进一步地,所述根据特征匹配结果,利用循环迭代算法计算目标匹配点集,包括:利用特征匹配结果构建单应性矩阵,并利用所述单应性矩阵进行基准框映射处理;利用循环迭代算法和映射结果确定匹配点中内点的个数,并将循环后得到的内点数最多的匹配点作为目标匹配点集,其中,
所述内点为前一帧匹配点映射后的坐标与后一帧匹配点的欧式距离小于第二预设阈值的点。
8.进一步地,所述根据所述目标匹配点集计算相机的移动角度,包括:计算相机的移动方向:式中,前后帧的匹配点分别表示为:计算相机的移动角度:。
9.进一步地,在所述计算根据所述运动模糊核得到的还原图片的模糊度之前,还包括:利用所述运动模糊核及维纳滤波去除原图片帧的运动模糊得到还原图片。
10.进一步地,所述模糊度的计算公式为:式中,m表示图片的宽,n表示图片的高,p
ij
表示图片在像素(i,j)处的像素值。
11.本发明还提供一种视频去运动模糊装置,包括:特征匹配单元,用于对待处理的视频进行解码,提取解码后的视频帧的特征点,并利用knn算法对所述特征点进行特征匹配;目标集获取单元,用于根据特征匹配结果,利用循环迭代算法计算目标匹配点集;移动角度计算单元,用于根据所述目标匹配点集计算相机的移动角度;模糊度计算单元,用于利用模糊半径及所述移动角度计算对应的运动模糊核,并计算根据所述运动模糊核得到的还原图片的模糊度;迭代计算单元,用于重复计算所述运动模糊核,当模糊半径小于或等于第一预设阈值时,将模糊半径增加预设值后代入计算;当所述模糊半径大于所述第一预设阈值时,输出最小的模糊度所对应的还原图片。
12.本发明还提供一种终端设备,包括:一个或多个处理器;存储器,与所述处理器耦接,用于存储一个或多个程序;当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如上任一项所述的视频去运动模糊方法。
13.本发明还提供一种可读存储介质,其上存储有计算机程序,所述计算机程序被处
理器执行时实现如上任一项所述的视频去运动模糊方法。
14.相对于现有技术,本发明的有益效果在于:本发明公开了一种视频去运动模糊方法,包括对待处理的视频进行解码,提取解码后的视频帧的特征点,利用knn算法对特征点进行特征匹配;根据特征匹配结果,利用循环迭代算法计算目标匹配点集;根据目标匹配点集计算相机的移动角度,并确定模糊半径的初始值;利用初始值及移动角度计算对应的运动模糊核,计算根据运动模糊核得到的还原图片的模糊度;重复计算运动模糊核,当模糊半径小于或等于第一预设阈值时,将模糊半径增加预设值后代入计算;当模糊半径大于所述第一预设阈值时,输出最小的模糊度所对应的还原图片。本发明提供的视频去运动模糊方法,能够较快处理视频帧,并达到较好的去运动模糊效果,具有成本低、操作简单的优点。
附图说明
15.为了更清楚地说明本发明的技术方案,下面将对实施方式中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
16.图1是本发明某一实施例提供的视频去运动模糊方法的流程示意图;图2是图1中步骤s20的子步骤的流程示意图;图3是本发明某一实施例提供的视频去运动模糊装置的结构示意图;图4是本发明某一实施例提供的终端设备的结构示意图。
具体实施方式
17.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
18.应当理解,文中所使用的步骤编号仅是为了方便描述,不对作为对步骤执行先后顺序的限定。
19.应当理解,在本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
20.术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
21.术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
22.请参阅图1,本发明某一实施例提供一种视频去运动模糊方法,包括以下步骤:s10、对待处理的视频进行解码,提取解码后的视频帧的特征点,并利用knn算法对所述特征点进行特征匹配。
23.本实施例中,对视频解码后得到视频帧,然后对视频帧的前后两帧分别提取特征点。其中,常用的特征点表示有orb(oriented fast and rotated brief)特征点、harris角
点、sift特征点、surf特征点等,本实施例中,为了提高匹配的效率,优先提取orb特征点,并利用knn(k最近邻k
‑
nearestneighbor)匹配方法进行特征匹配。
24.在某一具体实施例中,在所述取解码生成的视频帧的特征点之前,还包括对前后帧视频对应的图片进行去灰度处理。
25.具体地,从去灰度处理到提取orb特征点再到特征匹配具体包括以下步骤:1.1) 对解码后的前后两帧视频帧按照下面计算公式进行图片灰度化,其中r, g, b分别表示图片的rgb通道像素值,gray表示转换后的灰度值;gray = (r*299 g*587 b*114 500) / 1000;1.2) 对灰度图进行orb特征点提取;1.3) 对上述提取的特征点进行orb的brief描述子计算;1.4) 利用knn算法对前后两帧提取出来的brief描述子进行特征点匹配,得到匹配点。
26.s20、根据特征匹配结果,利用循环迭代算法计算目标匹配点集。
27.如图2所示,具体地,该步骤s20又包括以下子步骤:s201、利用特征匹配结果构建单应性矩阵,并利用所述单应性矩阵进行基准框映射处理。
28.s202、利用循环迭代算法和映射结果确定匹配点中内点的个数,并将循环后得到的内点数最多的匹配点作为目标匹配点集,其中,所述内点为前一帧匹配点映射后的坐标与后一帧匹配点的欧式距离小于第二预设阈值的点。
29.具体地,本实施例包括以下内容:2.1)随机从步骤s10中计算出来的匹配点中提取适量的点计算单应性矩阵h。
30.本实施例中优选提取10对匹配点。需要说明的是,单应性变换主要用来描述物体在世界坐标系和像素坐标系之间的位置映射关系,其对应的变换矩阵称为单应性矩阵。
31.2.2)计算基准框映射,其中基准框左上角点和右下角点分别用齐次坐标表示为,利用下面映射公式对基准框左上角和右下角分别进行映射:式中,为映射前的匹配点像素坐标的齐次坐标表示,为映射后的像素坐标。
32.2.3)对单应性矩阵的健康性进行评估,如果不健康则进入下一次迭代计算。其中,对单应性矩阵的健康性的进行评估的依据为:a)如果投影后左上角点相对投影后右下角位置不再是保持左上角的相对位置,则矩阵不健康;
b)如果投影后框的宽与上投影前框的宽之比大于5或者小于0.2,则矩阵不健康;c)如果投影后框的高与上投影前框的高之比大于5或者小于0.2,则矩阵不健康;当且仅当以上三点都不满足时,对应的单应性矩阵健康。
33.2.4)然后利用健康的单应性矩阵h对剩余的所有的前一帧的匹配点进行映射,点的映射公式如2.2)的公式所示。
34.2.5)计算前一帧的匹配点映射后的坐标和后一帧匹配点的欧式距离,如果欧氏距离小于第二预设阈值则认为该点为内点,计算完所有匹配点中内点个数,记录此次的内点数和随机提取的10对匹配点。其中,第二预设阈值通常设为20。
35.2.6)执行以上2.1)到2.5)步骤,循环预先设置的次数,例如100次,然后将这100次循环得到的内点数最多的匹配点作为目标匹配点集。
36.s30、根据所述目标匹配点集计算相机的移动角度。
37.具体地,计算相机的移动方向:式中,前后帧的匹配点分别表示为:计算相机的移动角度:。
38.s40、利用模糊半径及所述移动角度计算对应的运动模糊核,并计算根据所述运动模糊核得到的还原图片的模糊度。
39.本步骤中,首先初始化模糊半径,即将d设为1,利用半径d和步骤s30计算出来的方向角度angle计算运动模糊核,具体包括以下步骤:4.1)利用半径d构建运动矢量图,其中运动矢量图为一根直线,直线长度为d,角度为0,宽度为1像素;4.2)利用角度angle构建仿射变换矩阵:式中:。
40.4.3)利用4.2)中计算的仿射变换矩阵将4.1)中的运动矢量图映射到65*65的图上得到运动模糊核。
41.s50、判断模糊半径是否大于第一预设阈值。
42.本步骤中,当模糊半径小于或等于第一预设阈值时,将模糊半径增加预设值后代入计算,本实施例中该预设值优先设为1,第一预设阈值优先设为10。其中,当d大于10时执
行步骤s60,即输出最小的模糊度所对应的还原图片。
43.需要说明的是,本实施例中利用计算到的运动模糊核和维纳滤波去除原rgb图片帧的运动模糊得到清晰图片,并计算清晰图片的模糊度。其中,维纳滤波信噪比snr(signal
‑
noise ratio),通常设为固定值0.0316。
44.进一步地,模糊度的计算方法如下:5.1)将图片缩放到500*500大小;5.2)将图片进行快速傅里叶变换;5.3)将变换后零分量频谱移动到图像中心;5.4)去除低频,具体为将上徐变换后图片中心宽高为60像素区域设置为0;5.5)对步骤5.3)做反向操作,将低频位置还原;5.6)对上述图片做反傅里叶变换得到图片p;5.7)使用下面公式对像素值求平均得到图片的模糊度:式中,m表示图片的宽,n表示图片的高,p
ij
表示图片在像素(i,j)处的像素值。
45.本发明实施例提供的视频去运动模糊方法,通过特征点的匹配计算相机移动方向,通过移动方向和移动距离迭代调优模糊核,最终通过维纳滤波的方法去除运动模糊。该方法可以更好的预测模糊核,同时通过模糊评判算法自动迭代调优效果,不仅速度快还能够很好的还原清晰的视频帧,具有成本低、操作简单的有优点。
46.请参阅图3,本发明某一实施例还提供一种视频去运动模糊装置,包括:特征匹配单元01,用于对待处理的视频进行解码,提取解码后的视频帧的特征点,并利用knn算法对所述特征点进行特征匹配;目标集获取单元02,用于根据特征匹配结果,利用循环迭代算法计算目标匹配点集;移动角度计算单元03,用于根据所述目标匹配点集计算相机的移动角度;模糊度计算单元04,用于利用模糊半径及所述移动角度计算对应的运动模糊核,并计算根据所述运动模糊核得到的还原图片的模糊度;迭代计算单元05,用于重复计算所述运动模糊核,当模糊半径小于或等于第一预设阈值时,将模糊半径增加预设值后代入计算;当所述模糊半径大于所述第一预设阈值时,输出最小的模糊度所对应的还原图片。
47.本发明实施例提供的视频去运动模糊装置用于执行如上述任一项实施例所述的视频去运动模糊方法。本发明实施例通过特征点的匹配计算相机移动方向,通过移动方向和移动距离迭代调优模糊核,最终通过维纳滤波的方法去除运动模糊。该方法可以更好的预测模糊核,同时通过模糊评判算法自动迭代调优效果,不仅速度快还能够很好的还原清晰的视频帧,具有成本低、操作简单的有优点。
48.请参阅图4,本发明某一实施例提供一种终端设备,包括:一个或多个处理器;存储器,与所述处理器耦接,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如上所述的视频去运动模糊方法。
49.处理器用于控制该终端设备的整体操作,以完成上述的视频去运动模糊方法的全部或部分步骤。存储器用于存储各种类型的数据以支持在该终端设备的操作,这些数据例如可以包括用于在该终端设备上操作的任何应用程序或方法的指令,以及应用程序相关的数据。该存储器可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,例如静态随机存取存储器(static random access memory,简称sram),电可擦除可编程只读存储器(electrically erasable programmable read
‑
only memory,简称eeprom),可擦除可编程只读存储器(erasable programmable read
‑
only memory,简称eprom),可编程只读存储器(programmable read
‑
only memory,简称prom),只读存储器(read
‑
only memory,简称rom),磁存储器,快闪存储器,磁盘或光盘。
50.在一示例性实施例中,终端设备可以被一个或多个应用专用集成电路(application specific 1ntegrated circuit,简称as1c) 、数字信号处理器(digital signal processor,简称dsp) 、数字信号处理设备(digital signal processing device ,简称dspd)、可编程逻辑器件(programmable logic device,简称pld) 、现场可编程门阵列(field programmable gate array ,简称fpga) 、控制器、微控制器、微处理器或其他电子元件实现,用于执行如上述任一项实施例所述的视频去运动模糊方法,并达到如上述方法一致的技术效果。
51.在另一示例性实施例中,还提供一种包括程序指令的可读存储介质,该程序指令被处理器执行时实现如上述任一项实施例所述的视频去运动模糊方法的步骤。例如,该计算机可读存储介质可以为上述包括程序指令的存储器,上述程序指令可由终端设备的处理器执行以完成如上述任一项实施例所述的视频去运动模糊方法,并达到如上述方法一致的技术效果。
52.以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围。
再多了解一些
本文用于企业家、创业者技术爱好者查询,结果仅供参考。