一种基于深度学习硬件加速器实现USM锐化的方法与流程

文档序号:33095531发布日期:2023-01-31 23:53阅读:23来源:国知局
一种基于深度学习硬件加速器实现USM锐化的方法与流程
一种基于深度学习硬件加速器实现usm锐化的方法
技术领域
1.本发明涉及计算机技术领域,特别是涉及一种基于深度学习硬件加速器实现usm锐化的方法。


背景技术:

2.图像锐化(image sharpening)是补偿图像的轮廓,增强图像的边缘及灰度跳变的部分,使图像变得清晰,分为空间域处理和频域处理两类。图像锐化是为了突出图像上地物的边缘、轮廓,或某些线性目标要素的特征。这种滤波方法提高了地物边缘与周围像元之间的反差,因此也被称为边缘增强。
3.锐化操作的本质是增加图像细节边缘的对比度,这有助于我们的眼睛看清楚图像细节,从而使图像显得棱角分明、画面清晰,这是所有质量好的印刷摄影作品的必需条件。而用扫描仪直接复制的图像如果没有经过修整,看起来会有些单调而模糊不清,所以我们往往需要在图像做完处理后对它作锐化处理。在视频超分中,为了使压缩后的图像在感官上变得更为清晰,也常常使用图像锐化对超分后的图像做预处理,进而进行压缩,从而在达到减少比特的条件下,保证图像的感官质量。
4.但是由于视频编解码过程中需要对每一帧都采用usm进行锐化,对性能和实时性要求很高,并且随着视频编解码硬件加速器的广泛使用,将每一帧转移到主机的cpu上进行处理延迟严重,浪费了大量的内存带宽。


技术实现要素:

5.本发明提供了一种基于深度学习硬件加速器实现usm锐化的方法,以解决现有技术中不能高效实现usm锐化,而造成的问题。
6.本发明提供了一种基于深度学习硬件加速器实现usm锐化的方法,通过设置将硬件加速器与视频编解码单元相连接,所述方法包括:
7.在硬件加速器内依次设有padding层、usm卷积层和激活层relu6;
8.通过所述padding层和所述usm卷积层对所述视频编解码单元解码后的视频图像的原始图片进行模糊掩盖锐化处理usm,并通过所述激活层relu6限制模糊掩盖锐化处理usm后产生结果的取值区间,以快速实现模糊掩盖锐化处理usm,并将模糊掩盖锐化处理usm后的数据发送给所述视频编解码单元进行编码处理;
9.其中,所述锐化后的图像o=i+α
·
(i

f(i)),i为原始图片,f(i)为锐化使用的滤镜,α为数量。
10.可选地,所述硬件加速器采用的是uint8的数据格式,使得所述硬件加速器的输入输出自动映射到[0,255]。
[0011]
可选地,所述usm卷积层的卷积核的大小相当于半径,通过设计所述usm卷积层的参数来调节所述usm卷积层的权重和偏移值bias,以使得所述padding层和所述usm卷积层能够对解码后的视频图像进行模糊掩盖锐化处理usm。
[0012]
可选地,所述usm卷积层是使用相同大小padding,参数值为(α+1)
×u–
α
×
g,其中u是大小为k的卷积核,中间值为1,其他为0,g是大小为k的高斯卷积核。
[0013]
可选地,所述方法还包括:调换所述padding层和usm卷积层的位置,并修改所述usm卷积层的参数,同时在该padding层后依次设置融合层、加法卷积层和激活层relu6相连;
[0014]
通过所述usm卷积层并结合所述padding层来对所述视频编解码单元解码后的视频图像的原始图片进行模糊掩盖锐化处理usm,得到usm矫正图像,以保证所述原始图片边缘的数值为0,其他部分为准确的usm矫正图像;
[0015]
然后通过所述融合层将所述原始图片与所述usm矫正图像进行融合;
[0016]
再通过所述加法卷积层来对融合后的图像进行图像加法,以消除边缘失真问题,边缘为原始图像,其他部分为usm矫正后的图像;
[0017]
通过所述激活层relu6限制所述加法卷积层处理后的图像结果的取值区间,最后将处理后的后的数据发送给所述视频编解码单元进行编码处理。
[0018]
可选地,当在调换所述padding层和所述usm卷积层的位置,同时在该padding层后设置融合层时,所述usm卷积层的卷积核参数为α
×u–
α
×
g,其中u是大小为k的卷积核,只有中间值为1,其他为0;g是大小为k的高斯卷积核,且设定所述padding层为在上层输出的上下左右加(k-1)/2的padding,其填充值为0。
[0019]
可选地,所述融合层为将原始图像与经过padding处理后的usm矫正图像进行融合,且每一层都为独立的频道;
[0020]
对融合层进行卷积的所述加法卷积层的权重参数根据输入频道进行确定,其参数取值为1。
[0021]
可选地,当在调换所述padding层和usm卷积层的位置,同时在该padding层后设置融合层后,所述方法还包括:进一步改变所述usm卷积层的参数,并在当前的所述usm卷积层与所述padding层之间进一步增加一激活层relu层,以通过该激活层relu层限制所述usm卷积层处理后数据的取值区间。
[0022]
可选地,当在调换所述padding层和usm卷积层的位置,同时在该padding层后设置融合层,并在当前的所述usm卷积层与所述padding层之间进一步设置一激活层relu层时,设置所述usm层卷积层采用正/负值分开处理,再减去阈值,以降低数据处理的复杂度,然后通过所述加法卷积层结合进一步增加的激活层relu和所述padding层来解决边缘失真问题,同时,通过所述融合层对原始图片和所述usm卷积层矫正后的图像进行融合,以及通过使用所述加法卷积层实现图像加法,并通过最后的激活层relu6限制取值区间。
[0023]
可选地,当在调换所述padding层和usm卷积层的位置,同时在该padding层后设置融合层,并在当前的所述usm卷积层与所述padding层之间进一步设置一激活层relu层时,所述usm卷积层的卷积核参数的第一组频道为α
×u–
α
×
g,对应为正频道,第二组频道为α
×
g-α
×
u,对应为负频道,其中u是大小为k的卷积核,只有中间值为1,其他为0;g是大小为k的高斯卷积核,所述padding层为0,偏移值为-t/255*6,t为阈值,且所述padding层为在上层输出的上下左右加(k-1)/2的padding,其填充值为0,所述加法卷积层的参数和所述融合层的频道对应,与原始图像对应的频道,其参数设为1,与正频道对应的参数设置为1,与负频道对应的参数设为-1。
[0024]
本发明有益效果如下:
[0025]
本发明通过基于硬件编解码结合usm进行硬件加速,使得视频的帧在一个芯片内完成,所以整个解码、锐化、编码的全部过程完全不需要主机端的参与,从而提高了处理性能,减少了时间延迟,最终提升了用户体验。
[0026]
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
[0027]
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
[0028]
图1是本发明实施例提供的一种基于深度学习硬件加速器实现usm锐化的方法的流程示意图;
[0029]
图2是现有实现usm锐化的方法的流程示意图;
[0030]
图3是本发明实施例提供的一种基于深度学习硬件加速器实现usm锐化的方法流程框图;
[0031]
图4是本发明实施例提供的一种基于深度学习硬件加速器快速实现usm锐化的方法的流程示意图;
[0032]
图5是本发明实施例提供的一种基于深度学习硬件加速器优化实现usm锐化的方法的流程示意图;
[0033]
图6是本发明实施例提供的一种基于深度学习硬件加速器最优化实现usm锐化的方法的流程示意图;
具体实施方式
[0034]
现有都是通过cpu进行usm处理,由于其采用了不同大小的滤镜,性能比较差,同时由于视频编解码过程中需要对每一帧都采用usm进行锐化,对性能和实时性要求很高,另外随着视频编解码硬件加速器的广泛使用,将每一帧转移到主机的cpu上进行处理延迟严重,浪费了大量的内存带宽的问题,本发明通过基于硬件编解码结合usm进行硬件加速,使得视频的帧在一个芯片内完成,整个解码、锐化、编码的全部过程完全不需要主机端的参与,从而提高了处理性能,减少了时间延迟,最终提升了用户体验。以下结合附图以及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不限定本发明。
[0035]
本发明实施例提供了一种基于深度学习硬件加速器实现usm锐化的方法,参见图1,具体本发明实施例是将硬件加速器与视频编解码单元相连接,该方法具体包括:
[0036]
s101、在硬件加速器内依次设有padding层、usm卷积层和激活层relu6;
[0037]
s102、通过所述padding层和所述usm卷积层对所述视频编解码单元解码后的视频图像的原始图片进行模糊掩盖锐化处理usm,并通过所述激活层relu6限制模糊掩盖锐化处理usm后产生结果的取值区间,以快速实现模糊掩盖锐化处理usm,并将模糊掩盖锐化处理
usm后的数据发送给所述视频编解码单元进行编码处理;
[0038]
其中,本发明实施例所述锐化后的图像o=i+α
·
(i

f(i)),i为原始图片,f(i)为锐化使用的滤镜,α为数量。
[0039]
参见图2可知,现有usm锐化的方法需要多个硬件参与,同时,前处理和后处理,通常在主机端/dsp实现,性能低下,延迟严重,浪费内存带宽,然后对矩阵进行加减法,通常在dsp上实现,也在一定程度上造成性能低下。
[0040]
针对上述问题,本发明实施例创新性的采用一个硬件加速器(具有ai加速的硬件编解码器)来完成整个解码、锐化、编码的所有操作,使得视频的帧能够在一个芯片内完成,完全不需要主机端的参与,从而提高了处理性能,减少了时间延迟,也即本发明实施例所述的方法是用最小化数据传输(io),高效率且低延时实现解码、锐化、编码,具体本发明实施例的执行过程详见图3所示。
[0041]
需要说明的是,本发明实施例中的硬件加速器采用的是uint8的数据格式,通过这种格式能够使得所述硬件加速器的输入输出自动映射到[0,255],使得可以直接使用处理结果,而无需再对处理结果进一步进行其他处理,从而避免后续因对结果进一步处理而造成浪费时间和资源的问题;
[0042]
具体实施时,本发明实施例所述usm卷积层的卷积核的大小相当于半径,通过设计所述usm卷积层的参数来调节所述usm卷积层的权重和偏移值bias,以使得所述所述padding层和所述usm卷积层能够对解码后的视频图像进行模糊掩盖锐化处理usm。并且本发明实施例中usm卷积层是使用相同大小padding,参数值为(α+1)
×u–
α
×
g,其中u是大小为k的卷积核,中间值为1,其他为0,g是大小为k的高斯卷积核。
[0043]
需要说明的是,上述方案是usm处理最快的一种方法,即快速实现usm处理方案(具体参见图4),另外,本发明实施例还根据用户对处理性能的要求,而进一步设置了优化方案(具体参见图5)和最优方案(具体参见图6);
[0044]
具体来说,本发明实施例中的优化方案是:
[0045]
调换所述padding层和usm卷积层的位置,并修改所述usm卷积层的参数,同时在该padding层后依次设置融合层、加法卷积层和激活层relu6相连;
[0046]
通过所述usm卷积层并结合所述padding层来对所述视频编解码单元解码后的视频图像的原始图片进行模糊掩盖锐化处理usm,得到usm矫正图像,以保证所述原始图片边缘的数值为0,其他部分为准确的usm矫正图像;
[0047]
然后通过所述融合层将所述原始图片与所述usm矫正图像进行融合;
[0048]
再通过所述加法卷积层来对融合后的图像进行图像加法,以消除边缘失真问题,边缘为原始图像,其他部分为usm矫正后的图像;
[0049]
通过所述激活层relu6限制所述加法卷积层处理后的图像结果的取值区间,最后将处理后的后的数据发送给所述视频编解码单元进行编码处理。
[0050]
本发明实施例所述的最优化方案包括:当在调换所述padding层和usm卷积层的位置,同时在该padding层后设置融合层后,所述方法还包括:进一步改变所述usm卷积层的参数,并在当前的所述usm卷积层与所述padding层之间进一步增加一激活层relu6层,以通过该激活层relu6层限制所述usm卷积层处理后数据的取值区间。
[0051]
需要说明的是,本发明实施例中快速实现usm处理方案、优化方案,以及最优化方
案中的usm卷积层都是为了实现usm功能,但是各个方案中usm卷积层的参数稍有不同,具体参数,本领域技术人员可以根据实际需要进行任意设置,本发明对此不作具体限定。
[0052]
具体来说,本发明实施例所述的方法包括快速实现usm处理方案、优化方案,以及最优化方案,下面将结合图4、图5和图6通过一个具体的例子来对本发明实施例所述的方法进行详细的解释和说明:
[0053]
参见图4,是本发明实施例快速实现usm锐化处理的方法,该快速方案是使用usm卷积层(即usm_a)来一步实现高斯滤镜(或者其他滤镜,如拉普拉斯滤镜),数量,和原始图片相减,相当i+α
·
(i

f(i))。其中卷积核的大小相当于半径。其他参数通过设计实现卷积层的weights(权重)和bias(偏移值)来调节。
[0054]
其中,本发明实施例中的usm_a卷积层的参数设定方式为,使用相同大小padding,参数值为(α+1)
×u–
α
×
g。其中u是大小为k的卷积核,只有中间值为1,其他为0;g是大小为k的高斯卷积核。
[0055]
最后使用激活层relu6来限制产生结果的取值区间,大于6的值将强制变为6,小于0的值将强制变为0。
[0056]
由于深度学习加速器采用的是uint8的数据格式,其输入输出将会自动映射到[0,255],因此结果无需后处理,可以直接使用。
[0057]
相对于上述的快速实现usm锐化的方案,本发明实施例还提供了一种优化处理方案,参见图5,该方案依次包括usm卷积层、padding层、融合层、加法卷积层、激活层relu6;
[0058]
通过所述usm卷积层并结合所述padding层来对所述视频编解码单元解码后的视频图像的原始图片进行模糊掩盖锐化处理usm,得到usm矫正图像,以保证所述原始图片边缘的数值为0,其他部分为准确的usm矫正图像;
[0059]
然后通过所述融合层将所述原始图片与所述usm矫正图像进行融合;
[0060]
再通过加法卷积层来对融合后的图像进行图像加法,以消除边缘失真问题,边缘为原始图像,其他部分为usm矫正后的图像;
[0061]
通过所述激活层relu6限制所述加法卷积层处理后的图像结果的取值区间,最后将处理后的后的数据发送给所述视频编解码单元进行编码处理。
[0062]
具体来说,由于卷积实现的高斯滤镜边缘存在图像填充造成的影响[对于图像边缘(k-1)/2像素有影响],导致最终结果的边缘和原图比较有着显著的区别。为了解决卷积层在边缘的不准确而导致的边缘失真问题,本发明实施例所述的方法使用新的卷积层(usm_b)并结合padding层来保证边缘的数值为0,其他部分没有失真。然后用融合层将原图输入与usm矫正进行合并,并最后使用卷积层来实现图像加法来解决边缘失真的问题。但是相较于前面的快速版本,由于该方案多了融合层和一层卷积层,所以性能会有所下降。
[0063]
具体实施时,本发明实施例中卷积核参数(usm_b)为α
×u–
α
×
g,其中u是大小为k的卷积核,只有中间值为1,其他为0;g是大小为k的高斯卷积核。卷积层padding为0,bias为0,无激活函数。后续自定义padding层为在上层输出的上下左右加(k-1)/2的padding,其填充值为0。融合层为原图像输入和经过padding的卷积层进行融合,每一层都为独立的频道。
[0064]
最后再通过加法卷积层对融合层进行卷积。其权重参数根据输入频道决定,例如对于只有一个输入频道的输入,其权重参数为[1,1],其中第一个1代表原图像输入层,第二个1代表usm矫正层(usm_b)。bias为0。
[0065]
同时,本发明实施例使用激活层relu6来限制产生结果的取值区间,大于6的值将强制变为6,小于0的值将强制变为0。另外,本发明实施例的深度学习加速器采用的是uint8的数据格式,其输入输出将会自动映射到[0,255],因此结果无需后处理,可以直接使用。
[0066]
也就是说,本发明实施例中的优化方案是通过多设置一层加法卷积层以及融合层来提高锐化处理效果,但是在提高图像处理效果的同时,会牺牲处理效率。
[0067]
另外,本发明实施例在上述的优化处理方案的基础上,进一步提供了一种最终处理方案,参见图6,相对于上一优化方案,本发明实施例的最优处理方案是在usm卷积层与所述padding层之间进一步设置激活层relu层,然后通过该激活层relu层限制所述usm卷积层处理后数据的取值区间。
[0068]
设置所述第二层卷积层采用正/负值分开处理,再减去阈值,以降低数据处理的复杂度,然后通过所述usm卷积层结合所述激活层relu和所述padding层来解决边缘失真问题,再进一步通过所述融合层对原始图片和usm矫正图像进行融合,以及通过使用所述加法卷积层实现图像加法,最后通过激活层relu6限制取值区间。
[0069]
具体实施时,本发明实施例在所述usm卷积层与所述padding层之间进一步设置激活层relu层时,所述usm卷积层的卷积核参数的第一组频道为α
×u–
α
×
g,对应为正频道;第二组频道为α
×
g-α
×
u,对应为负频道;其中u是大小为k的卷积核,只有中间值为1,其他为0;g是大小为k的高斯卷积核,所述padding层为0,偏移值为-t/255*6,t为阈值,且所述padding层为在上层输出的上下左右加(k-1)/2的padding,其填充值为0,所述usm卷积层的参数和所述融合层的频道对应,与原始图像对应的频道,其参数设为1,与正频道对应的参数设置为1,与负频道对应的参数设为-1。
[0070]
详细来说,由于usm的目的是对边缘进行加强而不改变非边缘部分的数值,而实际应用中微小变动所产生的偏差会造成对图片非边缘部分的影响,增加一些不必要的噪音。因此优化版本的usm使用了阈值来限定此类噪音的影响。通过实验发现,噪音的大小普遍小于一到两个色阶。本发明实施例所述的方法可以通过增加一层卷积层来减去噪音的数值,从而达到去除噪音的目的。为了提高性能,本发明实施例所述的方法和原始的方法有微小的不同,即原实现采用mask来选取需要修正的像素点,计算复杂度高,硬件不友好。基于此,本发明实施例是采用正/负值分开处理,再减去阈值(threshold),不需要分别对待不同的像素,大大降低了复杂度。
[0071]
简单来说,本发明实施例所述的方法通过使用新的卷积层(usm_c),结合激活层relu、padding层,然后融合层,并最后使用卷积层实现图像加法以及激活层relu6限制取值区间。
[0072]
此时第一个卷积层的输入是一个频道,输出为α
·
(i

f(i))的正/负数部分(已经取绝对值并减去阈值)分开的两个频道。
[0073]
以一个输入频道为例,usm_c卷积核参数的第一个频道为α
×u–
α
×
g,第二个频道为α
×
g-α
×
u,其中u是大小为k的卷积核,只有中间值为1,其他为0;g是大小为k的高斯卷积核。卷积层padding为0,bias为-t/255*6,t为阈值(threshold),激活函数为relu6。
[0074]
后续自定义padding层为在上层输出的上下左右加(k-1)/2的padding,其填充值为0。融合层为原图像输入和经过padding的卷积层进行融合,每一层都为独立的频道。最后卷积层对融合层进行卷积。其权重参数根据输入频道决定,例如对于只有一个输入频道的
输入,其权重参数为[1,1,-1],第一个1代表原始输入图片,第二个1代表usm矫正的正值频道,最后一个-1代表了usm矫正的负值频道。
[0075]
同时,本发明实施例使用激活层relu6来限制产生结果的取值区间,大于6的值将强制变为6,小于0的值将强制变为0。
[0076]
需要说明的是,本发明实施例中的usm卷积层是快速实现usm锐化中的usm_a,以及优化方案和最优化方案中的加法卷积层,而加法卷积层则是化方案中的usm_b或者最优化方案中的usm_c。另外,本发明实施例中的各个卷积层、融合层、激活层以及其他各层的相关设置参数,都是可以根据实际需要进行任意设置的,本发明实施例在此不做详细限定。
[0077]
与上述两种方案相同的,本发明实施例中的最优处理方案的深度学习加速器采用的是uint8的数据格式,其输入输出将会自动映射到[0,255],因此结果无需后处理,可以直接使用。
[0078]
下面将使用高斯滤镜来进行演示,在此实例中将直接使用tfa(tensorflow addons)中的高斯滤镜作为模型的高斯权重来源,其中包含参数:滤镜大小(filter shape),sigma(对应滤镜大小),自行调节参数生成所需的权重并导出作为后续自定义卷积层的权重基础。
[0079]
以下通过一个具体的例子来对本发明实施例的最优方案进行说明,具体本发明实施例采用的输入为1280x720(720p),只使用y频道,usm半径为7,数量(α)为1.5,阈值(t)为2。使用rgb或者其他usm参数可以基于此实例类推。具体实现方法包括:
[0080]
计算修正的正负值频道:
[0081]
首先设计自定义卷积层(usm_c)。此时第一个卷积层的输入是一个频道,输出为α
·
(i

f(i))的正/负数部分(已经取绝对值并减去阈值)分开的两个频道。
[0082]
usm_c卷积核参数的第一个频道为1.5
×u–
1.5
×
g,第二个频道为1.5
×g–
1.5
×
u,其中u是大小为7的卷积核,只有中间值(坐标位置为[3,3])为1,其他所有值为0;g是大小为7的高斯卷积核。
[0083]
假设输入为1个频道,filter size为7x7,那么每个频道权重的大小为[1,7,7,1],整个卷积层的权重形状为[1,7,7,2],其中[:,:,:,0]为正值频道,[:,:,:,1]为负值频道。实际上第二个频道为第一个频道的负值。
[0084]
再为这个卷积层设置偏移值作为阈值,其偏移值和噪音大小有关,在此例中应该减去的噪音偏移值为2/255*6,考虑到输入的范围为[0,6],每个色阶为6/255。通过更改偏移值来减去噪音,因为卷积的原理就是输入*权重-偏移值,所以输出将除去这些原有的噪音。
[0085]
使用了激活函数后相当于:
[0086]
对于第一个频道,把卷积结果减去噪音后的正值部分保留,其他部分设为0。对于第二个频道,是把卷积结果负值部分取绝对值减去噪音后保留,其他部分设为0。此时的输出的频道变为2,包含卷积后结果的正负值频道。
[0087]
实际上,其输出的两个频道分别代表了usm中正值频道和负值频道(负值频道为usm负值部分的绝对值)。这两个频道实际上就是取绝对值并减去阈值后的结果。
[0088]
去除边缘失真:经过卷积后所得输出形状将小于原输入形状上下左右各(7-1)/2=3个像素点,即1274x714。那么为了输出后的结果与原输出大小一致,在此需要加一层大
小为3的padding层,padding的填充值为0。当他于原图融合后,padding的区域即采用原图的内容,这样就去除了边缘的失真。
[0089]
融合和限定范围:之后将三个频道(原始图片频道,正值频道,负值频道)融合。
[0090]
接下来用卷积实现相加,其卷积核的参数为[1,1,-1],第一个1代表原始输入图片,第二个1代表usm矫正的正值频道,最后一个-1代表了usm矫正的负值频道。
[0091]
最后使用激活层relu6来限制产层结果的取值区间来免除后处理,大于6的值将强制变为6,小于0的值将强制变为0。
[0092]
输出的图像只需进行后处理(输出*255/6)则可以获得锐化后的结果。
[0093]
在以上实例中,输入的预处理采用了[0,6]即预处理参数为mean 6/255,scale 0,由于模型量化过程采用了uint8,该预处理在硬件上无需任何操作,即输入原始图像像素信息即可。实际上也可以不使用任何预处理,其结果和原模型相同,但是其相应的卷积层参数需要进行针对性的修改,也属于本发明实施例所述的方法保护范畴之内。
[0094]
也就是说,本发明实施例采用卷积的方法在深度学习硬件加速器上实现usm。通过使用卷积来实现矩阵的数学运算,通过激活函数relu6来限制输出的数值范围,同时还使用原始图片的内容来覆盖结果的边缘部分,通过添加正负值mask和threshold减少图片非边缘处的影响,保证图像整体的连贯性,提高图像质量。最后,依据量化模型的特点,采用uint8进行量化,无需进行深度学习的预处理和后处理,直接输出锐化后的结果。
[0095]
该结果可以为下一步业务流程直接使用,例如输出图片,或者是视频编码,无需主机端参与。
[0096]
本发明实施例所述的方法至少具有以下的优点:
[0097]
1)使用卷积层一步实现涉及usm的滤镜,锐化数量以及矩阵加减法的运算;
[0098]
2)通过对usm的结果加padding并和原图合并,消除最终结果的边框效应;
[0099]
3)通过激活层relu6来限制产生结果的上限和下限;
[0100]
4)利用深度学习硬件加速器,量化过程中使用uint8数据类型,消除推理执行过程中前处理和后处理的过程,完全脱离对主机端的依赖,提高性能,简化了业务流程;
[0101]
5)通过对卷积层参数的修改,以及添加激活层来分离结果中的正负值,间接的实现了usm阈值中绝对值的运算;
[0102]
6)通过正负结果的分离,近似实现了usm阈值,使用卷积层实现矩阵加减法,以取代usm中像素点级的mask,在不影响视觉效果的情况下,大大地提高了性能;
[0103]
7)通过改变卷积层的参数可以灵活调用不同的滤镜,以及更改usm的参数,包括半径,数量,阈值。
[0104]
总体来说,相对于cpu进行锐化处理的方法,本发明实施例所述的方法的性能更好,功耗更低,业务流程更简洁。同时,本发明实施例所述的方法充分的利用了加速器的量化模式,去除了前处理和后处理的过程,同时避免了加速器对矩阵数学操作性能低的缺点,充分发挥了加速器的性能。
[0105]
尽管为示例目的,已经公开了本发明的优选实施例,本领域的技术人员将意识到各种改进、增加和取代也是可能的,因此,本发明的范围应当不限于上述实施例。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1