图像处理深度学习算法_深度学习图像处理算法 - CSDN
精华内容
参与话题
  • 作者:黄浴来源:https://zhuanlan.zhihu.com/p/76960575本文已经作者授权,禁止二次转载计算机视觉的底层,图像处理,根本上讲是基于一定假设条件下的信号重建...

    作者:黄浴

    来源:https://zhuanlan.zhihu.com/p/76960575

    本文已经作者授权,禁止二次转载

    计算机视觉的底层,图像处理,根本上讲是基于一定假设条件下的信号重建。这个重建不是3-D结构重建,是指恢复信号的原始信息,比如去噪声。这本身是一个逆问题,所以没有约束或者假设条件是无解的,比如去噪最常见的假设就是高斯噪声。

    以前最成功的方法基本是信号处理,传统机器学习也有过这方面的应用,只是信号处理的约束条件变成了贝叶斯规则的先验知识,比如稀疏编码(sparse coding)/字典学习(dictionary learning),MRF/CRF之类。下面讨论基于深度学习的方法。



    图像去噪

    以DnCNN和CBDNet为例介绍如何将深度学习用于去噪声。

    • DnCNN

    最近,由于图像去噪的鉴别模型学习性能引起了关注。去噪卷积神经网络(DnCNNs)将深度结构、学习算法和正则化方法用于图像去噪。

    如图是DnCNN架构图。给定深度为D的DnCNN,有三种层。(i)Conv + ReLU:第一层,64个大小为3×3×c的滤波器生成64个特征图,然后是ReLU,这里c表示图像通道数,灰度图像c = 1,彩色图像c = 3。(ii)Conv + BN + ReLU:层2~(D-1),64个大小为3×3×64的滤波器,在卷积和ReLU之间添加BN。(iii)Conv:最后一层,c个尺寸3×3×64滤波器来重建输出。

    DnCNN采用残差学习训练残差映射R(y)≈v,然后得到x = y - R(y)。DnCNN模型有两个主要特征:采用残差学习来学习R(y),并结合BN来加速训练以及提高去噪性能。卷积与ReLU结合,DnCNN通过隐层逐渐将图像结构与噪声干扰的观测分开。这种机制类似于EPLL和WNNM等方法中采用的迭代噪声消除策略,但DnCNN以端到端的方式进行训练。

    图中的网络可用于训练原始映射F(y)以预测x或残差映射R(y)以预测v。当原始映射更像是个体映射,残差映射将更容易优化。注意,噪声观察y更像是潜在干净图像x而不是残差图像v(特别是噪声水平低)。因此,F(y)将比R(y)更接近于个体映射,并且残差学习公式更适合于图像去噪。

    • CBD-Net

    为了提高深度去噪模型的鲁棒性和实用性,卷积盲去噪网络(CBD-Net,convolutional blind denoising network)结合了网络结构、噪声建模和非对称学习几个特点。CBD-Net由噪声估计子网和去噪子网组成,使用更逼真的噪声模型进行训练,考虑到信号相关噪声和摄像头内处理流水线。非盲去噪器(例如著名的BM3D)对噪声估计误差的不对称灵敏度,可以使噪声估计子网抑制低估的噪声水平。为了使学习的模型适用于真实图像,基于真实噪声模型的合成图像和几乎无噪声的真实噪声图像合并后训练CBDNet。

    如图是CBDNet盲去噪架构图。噪声模型在基于CNN的去噪性能方面起着关键作用。给定一个干净的图像x,更真实的噪声模型n(x)~N(0,σ(y))可以表示为,

    这里,n(x) = ns(x)+ nc由信号相关噪声分量ns和静止噪声分量nc组成。并且nc被建模为具有噪声方差σc2的AWGN,但是对于每个像素i,ns的噪声方差与图像强度相关,即x(i)·σs2。

    CBDNet包括噪声估计子网CNNE和非盲去噪子网CNND。首先,噪声估计子网CNNE采用噪声观测y来产生估计的噪声水平图σˆ(y)= FE(y; WE),其中WE表示CNNE的网络参数。CNNE的输出为噪声水平图,因为它与输入y具有相同的大小,并通过全卷积网络。然后,非盲去噪子网络CNND将y和σˆ(y)都作为输入以获得最终去噪结果x = FD(y,σ(y); WD),其中WD表示CNND的网络参数。此外,CNNE允许估计的噪声水平图σ(y)放入非盲去噪子网络CNND之前调整。一个简单的策略是让ρˆ(y)=γσˆ(y)以交互的方式做去噪计算。

    噪声估计子网CNNE是五层全卷积网络,没有池化和批量归一化(BN)操作。每个卷积层特征通道32,滤波器大小3×3。在每个卷积层之后有ReLU。与CNNE不同,非盲去噪子网络CNND采用U-Net架构,以y和σˆ(y)作为输入,在无噪干净图像给出预测x。通过残差学习学习残差映射R(y,σˆ(y); WD)然后预测x = y + R(y,σˆ(y); WD)。CNNE的16层U-Net架构引入对称跳跃连接、跨步卷积和转置卷积,来利用多尺度信息并扩大感受野。所有滤波器大小均为3×3,除最后一个,每个卷积层之后加ReLU。

    将如下定义的不对称损失引入噪声估计子网,并与重建损失结合一起,训练完整的CBDNet:

    此外,引入一个全局变化(TV)正则化来约束σˆ(y)的平滑度,


    其中∇h(∇v)表示水平(垂直)方向的梯度算子。

    重建损失为

    总损失函数

    一些结果例子:


    图像去雾

    单图像去雾是一个具有挑战性的病态问题。现有方法使用各种约束/先验来获得似乎合理的除雾解决方案。实现去雾的关键是估计输入雾霾图像的介质传输图(medium transmission map)。

    • DehazeNet

    DehazeNet是一个可训练的端到端系统,用于介质传输估计。DehazeNet将雾图像输入,输出其介质传输图,随后通过大气散射模型(atmospheric scattering model)恢复无雾图像。DehazeNet采用CNN的深层架构,设计能体现图像去雾的假设/先验知识。具体而言,Maxout单元层用于特征提取,几乎所有与雾相关的特征。还有一种新的非线性激活函数,称为双边整流线性单元(Bilateral Rectified Linear Unit,BReLU),提高图像的无雾恢复质量。

    下图是DehazeNet架构图。在概念上DehazeNet由四个顺序操作(特征提取、多尺度映射、局部极值和非线性回归)组成,它由3个卷积层、最大池化、Maxout单元和BReLU激活函数构成。下面依次介绍四个操作细节。

    1) 特征提取:为了解决图像去雾问题的病态性,现有方法提出了各种假设,并且基于这些假设,在图像域密集地提取与雾度相关的特征,例如,著名的暗通道(dark channel),色调差和颜色衰减等;为此,选择具有特别激活函数的Maxout单元作为降维非线性映射;通常Maxout用于多层感知器(MLP)或CNN的简单前馈非线性激活函数;在CNN使用时,对k仿射特征图逐像素最大化操作生成新的特征图;设计DehazeNet的第一层如下

    其中

    分别代表滤波器和偏差。

    2) 多尺度映射:多尺度特征已经被证明对于去除雾度是有效的;多尺度特征提取实现尺度不变性有效;选择在DehazeNet的第二层使用并行卷积运算,其中任何卷积滤波器的大小在3×3、5×5和7×7之间,那么第二层的输出写为

    其中

    包含分为3组的n2对参数, n2是第二层的输出维度,i∈[1,n2]索引输出特征图,⌈⌉向上取整数,表示余数运算。

    3) 局部极值:根据CNN的经典架构,在每个像素考虑邻域最大值可克服局部灵敏度;另外,局部极值是根据介质传输局部恒常的假设,并且通常用于克服传输估计的噪声;第三层使用局部极值运算,即

    注:局部极值密集地应用于特征图,能够保持图像分辨率。

    4) 非线性回归:非线性激活函数的标准选择包括Sigmoid和ReLU;前者容易受到梯度消失的影响,导致网络训练收敛缓慢或局部最优;为此提出了ReLU ,一种稀疏表示方法;不过,ReLU仅在值小于零时才禁止输出,这可能导致响应溢出,尤其是在最后一层;所以采用一种BReLU激活功能,如图所示;BReLU保持了双边约束(bilateral restraint)和局部线性;这样,第四层特征图定义为

    这里W4 = {W4}包含一个大小为n3×f4×f4的滤波器,B4 = {B4}包含一个偏差,tmin, max是BReLU的边际值(tmin = 0和tmax = 1) 。根据上式,该激活函数的梯度可以表示为

    将上述四层级联形成基于CNN的可训练端到端系统,其中与卷积层相关联的滤波器和偏置是要学习的网络参数。

    • EPDN

    论文将图像去雾问题简化为图像到图像的转换问题,并提出增强的Pix2pix去雾网络(EPDN),它可以生成无雾图像,而不依赖于物理散射模型。EPDN由生成对抗网络(GAN)嵌入,然后是增强器。一种理论认为视觉感知是全局优先的,那么鉴别器指导生成器在粗尺度上创建伪真实图像,而生成器后面的增强器需要在精细尺度上产生逼真的去雾图像。增强器包含两个基于感受野模型的增强块,增强颜色和细节的去雾效果。另外,嵌入式GAN与增强器是一起训练的。

    如图是EPDN架构的示意图,由多分辨率生成器模块,增强器模块和多尺度鉴别器模块组成。即使pix2pixHD使用粗到细特征,结果仍然缺乏细节并且颜色过度。一个可能的原因是现有的鉴别器在引导生成器创建真实细节方面受到限制。换句话说,鉴别者应该只指导生成器恢复结构而不是细节。为了有效地解决这个问题,采用金字塔池化模块,以确保不同尺度的特征细节嵌入到最终结果中,即增强块。从目标识别的全局上下文信息中看出,在各种尺度需要特征的细节。因此,增强块根据感受野模型设计,可以提取不同尺度的信息。

    如图是增强块的架构:有两个3×3前端卷积层,前端卷积层的输出缩减,因子分别是4×,8×,16×,32×,这样构建四尺度金字塔;不同尺度的特征图提供了不同的感受域,有助于不同尺度的图像重建;然后,1×1卷积降维,实际上1×1卷积实现了自适应加权通道的注意机制;之后,将特征图上采样为原始大小,并与前端卷积层的输出连接在一起;最后,3×3卷积在连接的特征图上实现。

    在EPDN中,增强器包括两个增强块。第一个增强块输入是原始图像和生成器特征的连接,而这些特征图也输入到第二个增强块。

    • PMS-Net

    补丁图选择网络(Patch Map Selection Network,PMS-Net)是一个自适应和自动化补丁尺寸选择模型,主要选择每个像素对应的补丁尺寸。该网络基于CNN设计,可以从输入图像生成补丁图。其去雾算法的流程图如图所示。

    为了提高该网络的性能,PMS-Net提出一种有金字塔风格的多尺度U-模块。基于补丁图,可预测更精确的大气光和透射图。所提出的架构,可以避免传统DCP的问题(例如,白色或明亮场景的错误恢复),恢复图像的质量高于其他算法。其中,定义了一个名为补丁图(patch map)的来解决暗通道先验(DCP)补丁大小固定的问题。

    如图是PMS-Net的架构,分为编码器和解码器。最初,输入的雾图像和16个3×3内核的滤波器卷积投影到更高维空间。然后,多尺度-U模块从更高维数据中提取特征。多尺度U-模块的设计如图左侧所示。

    输入将通过几个Multiscale-W-ResBlocks(MSWR),如下图左侧所示。MSWR的设计想法类似Wide-ResNet(WRN),通过增加网络宽度和减小深度来改进ResNet。每块中使用快捷方式执行Conv-BN-ReLu-Dropout-Conv-BN-ReLu这一系列操作提取信息。MSWR中多尺度概念类似Inception-ResNet,采用多层技术来增强信息的多样性,并提取详细信息。

    多尺度U-模块中的其他部分,Multi-Deconv模块将信息与MSWR而不是反卷积的输出连接在一起,因为反卷积层可以帮助网络重建输入数据的形状信息。因此,通过多尺度反卷积组合,可以从网络前层重建更精确的特征图。此外,Multi-Deconv执行金字塔风格并提高尺度与MSWR连接。也就是说,不同层特征图以不同的尺度运行去卷积(参见多尺度U-模块图右侧)。

    为保留高分辨率,MSWR和Multi-Deconv模块的输出直接连接。然后,特征图馈送到网络更高层的Multi-Deconv模块和解码器。解码器采用全局卷积网络模块(global convolutional network modules,GCN)。边界细化模块(boundary refinement,BR)也用于边缘信息保留。上采样操作升级尺度层。此外,采用致密连接样式合并高与低分辨率的信息。PMS-Net可以预测补丁图。

    下图是一些实验结果的分析:白色和明亮场景中去雾结果的比较;第1栏:输入图像; 第2栏:通过固定尺寸补丁DCP的结果; 第3栏:PMS-Net方法的结果; 第4栏:第2栏和第3栏中白色或亮部的放大; 第5栏:补丁图; 第6-7栏:分别由DCP和PMS-Net方法估计的介质传输图。



    图像去模糊

    这是一种多尺度卷积神经网络,以端到端的方式恢复清晰的图像,其中模糊是由各种来源引起的,包括镜头运动、景物深度和物体运动。如图是定义的网络模型架构图,称为ResBlocks:(a)原始残余网络构建块,(b)该网络修正的模块化构建块;没有使用批量归一化(BN)层,因为训练模型使用的小批量(mini-batch)大小为2,比BN通常要小;在输出之前去除整流线性单元(ReLU)有利于提高经验性能。

    设计的去模糊多尺度网络架构见下图所示:Bk,Lk,Sk分别表示模糊、潜在和GT清晰图像。下标k表示高斯金字塔第k个尺度层,下采样到1 / 2k尺度。该模型将模糊的图像金字塔作为输入并输出估计的潜在图像金字塔。每个中间尺度的输出都训练成清晰。在测试时,选择原始尺度的输出图像作为最终结果。

    用ResBlocks堆叠足够数量的卷积层,每个尺度的感受野得以扩展。在训练时,将输入和输出高斯金字塔补丁的分辨率设置为{256×256,128×128,64×64}。连续尺度之间的比例(scale ratio)是0.5。对所有卷积层,滤波器大小为5×5。因为模型是全卷积,在测试时补丁大小可能变化。

    定义一个多尺度损失函数模拟传统的粗到精方法

    其中Lk,Sk分别表示在尺度层k的模型输出图像和GT图像。而对抗损失函数定义为

    其中G和D分别是生成器和鉴别器。最终的损失函数是

    一些结果如图所示,有几个缩放的局部细节。

    具有深度觉察和视角聚合(Depth Awareness and View Aggregation)的网络DAVANet是一个立体图像去模糊网络。网络中来自两个视图有深度和变化信息的3D场景线索合并在一起,动态场景中有助于消除复杂空间变化的模糊。具体而言,通过这个融合网络,将双向视差估计和去模糊整合到一个统一框架中。

    下图描述立体视觉带来的模糊:(a)是与图像平面平行的相对平移引起的深度变化模糊,(b)和(c)是沿深度方向的相对平移和旋转引起的视角变化模糊。注意,所有复杂运动可以分解为这三个相对子运动模式。

    如图(a)所示,我们可以得到:

    其中ΔX,ΔP,f和z分别表示模糊的大小、目标点的运动、焦距和目标点的深度。

    如图(b)所示,我们知道:

    其中b是基线,h是左摄像头CL和线段PtPt+1之间的距离。

    如图(c)所示,两个镜头的速度vCL,vCR与相应旋转半径CLO,CRO成正比,即

    DAVANet总体流程图如图所示,由三个子网络组成:用于单镜头去模糊的DeblurNet,用于双向视差估计的DispBiNet,和以自适应选择方式融合深度和双视角信息的FusionNet。这里采用小卷积滤波器(3×3)来构造这三个子网络,因为大型滤波器并不能提高性能。

    DeblurNet的结构基于U-Net,如图(a)所示。用基本残差模块作为构建块,编码器输出特征为输入尺寸的1/4×1/4。之后,解码器通过两个上采样残差块全分辨率重建清晰图像。在编码器和解码器之间使用相应特征图之间的跳连接(skip-connections)。此外,还采用输入和输出之间的残差连接。这使网络很容易估计模糊-尖锐(blurry-sharp)图像对之间的残差并保持颜色一致性。还有,在编码器和解码器之间使用两个空洞残差(atrous residual)块和一个Context模块来获得更丰富的特征。DeblurNet对两个视图使用共享权重。

    受以前DispNet模型结构的启发,采用一个小型DispBiNet,如图(b)所示。与DispNet不同,DispBiNet可以预测一个前向过程的双向视差。输出是完整分辨率,网络有三次下采样和上采样操作。此外,DispBiNet中还使用了残差块、空洞残差块和Context模块。

    为了嵌入多尺度特征,DeblurNet和DispBiNet采用Context模块,它包含具有不同扩张率(dilated rate)的并行扩张卷积(dilated convolution),如图所示。四个扩张率是设置为1, 2, 3, 4。Context模块融合更丰富的分级上下文信息,有利于消除模糊和视差估计。

    为了利用深度和双视角信息去模糊,引入融合网络FusionNet来丰富具有视差和双视角的特征。如图所示,FusionNet采用原始立体图像IL,IR,估计的左视图DL视差,DispBiNet倒数第二层的特征FD和DeblurNet编码器的特征FL,FR作为输入,以生成融合特征FLfuse。

    为双视角聚合,估计的左目视差DL将DeblurNet的右目特征FR变形到左目,即为WL(FR)。不用直接连接WL(FR)和FL,而是子网GateNet生成从0到1的软门图(soft gate map)GL。门图可以自适应选择方式用来融合特征FL和WL(FR),即选择有用的特征,并从另一个视角拒绝不正确的特征。例如,在遮挡或错误视差区域,门图值往往为0,这表明只采用参考视角F L的特征。GateNet由五个卷积层组成,如图所示,输入是左图像IL和变形的右图像WL(IR)的绝对差,即| IL - WL(IR)|,输出是单通道的门图。所有特征通道共享相同的门图以生成聚合特征:

    为深度觉察,使用三个卷积层的子网络DepthAwareNet,而且两个视角不共享该子网络。给定视差DL和DispBiNet的倒数第二层特征FD,DepthAwareNet-left产生深度关联的特征FL。事实上,DepthAwareNet隐式地学习深度觉察的先验知识,这有助于动态场景的去模糊。

    最后,连接原始左图特征FL,视角聚合特征FLviews和深度觉察特征FLdepth生成融合的左视角特征FLfuse。然后,将FLfuse供给DeblurNet的解码器。同理,采用FusionNet一样的架构可以得到右视角的融合特征。

    DeblurNet损失函数包括两个部分:MSE损失和感知损失,即

    其中

    DispBiNet的视差损失函数如下:

    如图显示的是视差对去模糊的作用:(a)(f)(g)和(h)分别表示模糊图像、清晰图像、预测的视差和GT视差。(b)和(e)是单目去模糊网络DeblurNet和双目去模糊网络DAVANet的结果。在(c),两个左图像输入,DispBiNet不能为深度觉察和视角聚合提供任何深度信息或视差。在(d)中,为了消除视角聚合的影响,不会从FusionNet中其他视图变形该特征。由于该网络可以准确估计和采用视差,因此其性能优于其他方法


    图像增强

    • Deep Bilateral Learning

    这是一种做图像增强的神经网络架构,其灵感来自双边网格处理(bilateral grid processing)和局部仿射颜色变换。基于输入/输出图像对,训练卷积神经网络来预测双边空间(bilateral space)局部仿射模型的系数。网络架构目的是学习如何做出局部的、全局的和依赖于内容的决策来近似所需的图像变换。输入神经网络是低分辨率图像,在双边空间生成一组仿射变换,以边缘保留方式切片(slicing)节点对这些变换进行上采样,然后变换到全分辨率图像。该模型是从数据离线训练的,不需要在运行时访问原始操作。这样模型可以学习复杂的、依赖于场景的变换。

    如图所示,对低分辨率的输入I的低分辨率副本I~执行大部分推断(图顶部),类似于双边网格(bilateral grid)方法,最终预测局部仿射变换。图像增强通常不仅取决于局部图像特征,还取决于全局图像特征,如直方图、平均强度甚至场景类别。因此,低分辨率流进一步分为局部路径和全局路径。将这两条路径融合在一起,则生成代表仿射变换的系数。

    而高分辨率流(图底部)在全分辨率模式工作,执行最少的计算,但有捕获高频效果和保留边缘的作用。为此,引入了一个切片节点。该节点基于学习的导图(guidance map)在约束系数的低分辨率格点做数据相关查找。基于全分辨率导图,给定网格切片获得的高分辨率仿射系数,对每个像素做局部颜色变换,产生最终输出O。在训练时,在全分辨率下最小化损失函数。这意味着,仅处理大量下采样数据的低分辨率流,仍然可以学习再现高频效果的中间特征和仿射系数。

    下面可以从一些例子看到各个改进的效果。如图所示,低级卷积层具备学习能力,可以提取语义信息。用标准双边网格的喷溅操作(splatting operation)替换这些层会导致网络失去很大的表现力。

    如图所示,全局特征路径允许模型推理完整图像,(a)例如再现通过强度分布或场景类型的调整。(b)如果没有全局路径,模型可以做出空间不一致的局部决策。

    如图所示,新切片节点对架构的表现力及其对高分辨率效果的处理至关重要。用反卷积滤波器组替换该节点会降低表现力(b),因为没有使用全分辨率数据来预测输出像素。由于全分辨率导图,切片层以更高的保真度(c)逼近。

    如图所示,(b)HDR的亮度畸变,特别是在前额和脸颊的高光区域出现的海报化畸变(posterization artifacts)。相反,切片节点的导图使(c)正确地再现(d)基础事实GT。

    • Deep Photo Enhancer

    它提出一种不成对学习(unpaired learning)的图像增强方法。给定一组具有所需特征的照片,该方法学习一种照片增强器,将输入图像转换为具有这些特征的增强图像。在基于双路(two-way)生成对抗网络(GAN)框架基础上,改进如下:1)基于全局特征扩充U-Net,而全局U-Net是GAN模型的生成器;2)用自适应加权方案改进Wasserstein GAN(WGAN),训练收敛更快更好,对参数敏感度低于WGAN-GP;3)在双路GAN的生成器采用单独BN层,有助于生成器更好地适应自身输入分布,提高GAN训练的稳定性。

    如图介绍了双路GAN的架构。(a)是单向GAN的架构。给定输入x∈X,生成器GX将x变换为y'= GX(x)∈Y。鉴别器DY旨在区分目标域{y}中的样本和生成的样本{y'= GX(x)}。为了实现循环一致性,双路GAN被采用,例如CycleGAN 和DualGAN 。它们需要G'Y(GX(x))= x,其中生成器G'Y采用GX生成的样本并将其映射回源域X。此外,双路GAN通常包含前向映射(X →Y)和后向映射(Y→X)。(b)显示了双路GAN的体系结构。在前向传播时,

    ,检查x''和x之间的一致性。在后向传播时,

    ,检查y和y''之间的一致性。

    如图是GAN的生成器和鉴别器架构。生成器器基于U-Net,但添加全局特征。为了提高模型效率,全局特征的提取与U-Net的收缩部分共享前五层局部特征的提取。每个收缩步骤包括5×5滤波、步幅为2、SELU激活和BN。对全局特征来说,假定第五层是32×32×128特征图,收缩后进一步减小到16×16×128然后8×8×128。通过全连接层、SELU激活层和另一个全连接层,将8×8×128特征图减少到1×1×128。然后将提取的1×1×128全局特征复制32×32个拷贝,并和低级特征32×32×128之后相连接,得到32×32×256特征图,其同时融合了局部和全局特征。在融合的特征图上执行U-Net的扩展路径。最后,采用残差学习的思想,也就是说,生成器只学习输入图像和标注图像之间的差异。

    WGAN依赖于训练目标的Lipschitz约束:当且仅当它梯度模最多是1时,一个可微函数是1-Lipschtiz 。为了满足约束条件,WGAN-GP通过添加以下梯度惩罚直接约束鉴别器相对于其输入的输出梯度模,

    其中yˆ是沿目标分布与生成器分布之间的直线的采样点。

    参数λ加权原鉴别器损失的惩罚。λ确定梯度趋进1的趋势。如果λ太小,无法保证Lipschitz约束。另一方面,如果λ太大,则收敛可能缓慢,因为惩罚可能过重加权鉴别器损失。λ的选择很重要。相反,使用以下梯度惩罚,

    这更好地反映了要求梯度小于或等于1并且仅惩罚大于1部分的Lipschitz约束。更重要的是,可采用自适应加权方案调整权重λ,选择适当的权重,即梯度位于所需的间隔内,比如[1.001, 1.05]。如果滑动窗(大小= 50)内的梯度移动平均值(moving average of gradients)大于上限,则意味着当前权重λ太小而且惩罚力不足以确保Lipschitz约束。因此,通过加倍权重来增加λ。另一方面,如果梯度移动平均值小于下限,则将λ衰减一半,这样就不会变得太大。这个改进,称为A-GAN(自适应GAN)。

    前面图(a)生成器作GX而图(b)鉴别器用作DY,得到以前图(a)单路GAN的架构。同样推广A-GAN可以得到如以前图(b)的双路GAN架构。

    • Deep Illumination Estimation

    这是一种基于神经网络增强曝光不足照片的方法,其中引入中间照明(intermediate illumination),将输入与预期的增强结果相关联,也加强了网络的能力,能够从专家修改的输入/输出图像对学习复杂的摄影修整过程。基于该模型,用照明的约束和先验定义一个损失函数,并训练网络有效地学习各种照明条件的修整过程。通过这些方式,网络能够恢复清晰的细节,鲜明的对比度和自然色彩。

    从根本上说,图像增强任务可以被称为寻找映射函数F,从输入图像I增强,I ̃ = F(I)是期望的图像。在Retinex的图像增强方法中,F的倒数通常建模为照明图S,其以像素方式与反射图像I ̃相乘产生观察图像I:I = S * I ̃。

    可以将反射分量I ̃视为曝光良好的图像,因此在模型中,I ̃作为增强结果,I作为观察到的未曝光图像。一旦S已知,可以通过F(I)= S-1 * I获得增强结果I ̃. S被模型化为多通道(R,G,B)数据而不是单通道数据,以增加其在颜色增强方面的能力,尤其是处理不同颜色通道的非线性特性。

    如图是网络的流水线图。增强曝光不足的照片需要调整局部(对比度,细节清晰度,阴影和高光)和全局特征(颜色分布,平均亮度和场景类别)。从编码器网络生成的特征考虑局部和全局上下文信息,见图上部。为了驱动网络学习从输入的曝光不足图像(Ii)到相应的专家修饰图像(I ̃)的照明映射,设计了一种损失函数,具有照明平滑度先验知识以及增强的重建和颜色损失,见图底部。这些策略有效地从(Ii,I ̃i)学习S,通过各种各样的照片调整来恢复增强的图像。值得一提的是,该方法学习低分辨率下预测图像-照明映射的局部和全局特征,同时基于双边网格的上采样将低分辨率预测扩展到全分辨率,系统实时性好。

    下图展示了一些增强的结果例子(上:输入,下:增强)。

    参考文献

    • 1. K Zhang et al., “Beyond a Gaussian denoiser: Residual learning of deep CNN for image denoising”,IEEE T-IP,2017

    • 2. A Ignatov et al., “DSLR-Quality Photos on Mobile Devices with Deep Convolutional Networks“,arXiv 1704.02470, 2017

    • 3. P. Svoboda et al., “Compression artifacts removal using convolutional neural networks”. arXiv 1605.00366, 2016.

    • 4. B. Cai et al.,”Dehazenet: An end-to-end system for single image haze removal”. IEEE T-IP, 2016

    • 5. X. Mao, C. Shen, Y.-B. Yang. “Image restoration using very deep convolutional encoder-decoder networks with symmetric skip connections”. Advances in Neural Information Processing Systems 29, 2016

    • 6. Z. Yan et al., “Automatic photo adjustment using deep neural networks”. ACM Trans. Graph., 2016

    • 7. M Gharbi et al.,“Deep Bilateral Learning for Real-Time Image Enhancement”, arXiv 1707.02880, 2017

    • 8. S Nah, T Kim, K Lee,“Deep Multi-scale Convolutional Neural Network for Dynamic Scene Deblurring”, CVPR, 2017

    • 9. Y Chen et al.,“Deep Photo Enhancer: Unpaired Learning for Image Enhancement from Photographs with GANs”, CVPR, 2018.

    • 10. J Zhang et al., "Dynamic Scene Deblurring Using Spatially Variant Recurrent Neural Networks", CVPR 2018.

    • 11. S Guo et al.,“Toward Convolutional Blind Denoising of Real Photographs”, CVPR, 2019

    • 12. R Wang et al.,“Underexposed Photo Enhancement using Deep Illumination Estimation”, CVPR 2019.

    • 13. Y Qu et al.,“Enhanced Pix2pix Dehazing Network”, CVPR, 2019

    • 14. S Zhou et al.,“DAVANet: Stereo Deblurring with View Aggregation”, CVPR 2019.

    • 15. W Chen, J Ding, S Kuo,“PMS-Net: Robust Haze Removal Based on Patch Map for Single Images”, CVPR, 2019

     

    “哪吒头”—玩转小潮流

    展开全文
  • 点击上方“AI算法图像处理”,选择加"星标"或“置顶”重磅干货,每天 8:25 送达作者:黄浴 「 超级大牛,知乎搜索可知~超多技术干货」编辑:AI算法图像处理来源...
        

    点击上方AI算法与图像处理”,选择加"星标"或“置顶”

    重磅干货,每天 8:25 送达640?wx_fmt=jpeg

    640?wx_fmt=png

    作者:黄浴 「 超级大牛,知乎搜索可知~超多技术干货 」

    编辑:AI算法与图像处理

    来源:https://zhuanlan.zhihu.com/p/76960575

    已授权转载,未经允许,禁止二次转载

    计算机视觉的底层,图像处理,根本上讲是基于一定假设条件下的信号重建。这个重建不是3-D结构重建,是指恢复信号的原始信息,比如去噪声。这本身是一个逆问题,所以没有约束或者假设条件是无解的,比如去噪最常见的假设就是高斯噪声。
    以前最成功的方法基本是信号处理,传统机器学习也有过这方面的应用,只是信号处理的约束条件变成了贝叶斯规则的先验知识,比如稀疏编码(sparse coding)/字典学习(dictionary learning),MRF/CRF之类。下面讨论基于深度学习的方法。

    图像去噪

    以DnCNN和CBDNet为例介绍如何将深度学习用于去噪声。

    • DnCNN

    最近,由于图像去噪的鉴别模型学习性能引起了关注。去噪卷积神经网络(DnCNNs)将深度结构、学习算法和正则化方法用于图像去噪。

    如图是DnCNN架构图。给定深度为D的DnCNN,有三种层。(i)Conv + ReLU:第一层,64个大小为3×3×c的滤波器生成64个特征图,然后是ReLU,这里c表示图像通道数,灰度图像c = 1,彩色图像c = 3。(ii)Conv + BN + ReLU:层2~(D-1),64个大小为3×3×64的滤波器,在卷积和ReLU之间添加BN。(iii)Conv:最后一层,c个尺寸3×3×64滤波器来重建输出。

    DnCNN采用残差学习训练残差映射R(y)≈v,然后得到x = y - R(y)。DnCNN模型有两个主要特征:采用残差学习来学习R(y),并结合BN来加速训练以及提高去噪性能。卷积与ReLU结合,DnCNN通过隐层逐渐将图像结构与噪声干扰的观测分开。这种机制类似于EPLL和WNNM等方法中采用的迭代噪声消除策略,但DnCNN以端到端的方式进行训练。

    640?wx_fmt=jpeg

    图中的网络可用于训练原始映射F(y)以预测x或残差映射R(y)以预测v。当原始映射更像是个体映射,残差映射将更容易优化。注意,噪声观察y更像是潜在干净图像x而不是残差图像v(特别是噪声水平低)。因此,F(y)将比R(y)更接近于个体映射,并且残差学习公式更适合于图像去噪。

    • CBD-Net

    为了提高深度去噪模型的鲁棒性和实用性,卷积盲去噪网络(CBD-Net,convolutional blind denoising network)结合了网络结构、噪声建模和非对称学习几个特点。CBD-Net由噪声估计子网和去噪子网组成,使用更逼真的噪声模型进行训练,考虑到信号相关噪声和摄像头内处理流水线。非盲去噪器(例如著名的BM3D)对噪声估计误差的不对称灵敏度,可以使噪声估计子网抑制低估的噪声水平。为了使学习的模型适用于真实图像,基于真实噪声模型的合成图像和几乎无噪声的真实噪声图像合并后训练CBDNet。

    如图是CBDNet盲去噪架构图。噪声模型在基于CNN的去噪性能方面起着关键作用。给定一个干净的图像x,更真实的噪声模型n(x)~N(0,σ(y))可以表示为,

    640?wx_fmt=jpeg
    640?wx_fmt=jpeg

    这里,n(x) = ns(x)+ nc由信号相关噪声分量ns和静止噪声分量nc组成。并且nc被建模为具有噪声方差σc2的AWGN,但是对于每个像素i,ns的噪声方差与图像强度相关,即x(i)·σs2。

    CBDNet包括噪声估计子网CNNE和非盲去噪子网CNND。首先,噪声估计子网CNNE采用噪声观测y来产生估计的噪声水平图σˆ(y)= FE(y; WE),其中WE表示CNNE的网络参数。CNNE的输出为噪声水平图,因为它与输入y具有相同的大小,并通过全卷积网络。然后,非盲去噪子网络CNND将y和σˆ(y)都作为输入以获得最终去噪结果x = FD(y,σ(y); WD),其中WD表示CNND的网络参数。此外,CNNE允许估计的噪声水平图σ(y)放入非盲去噪子网络CNND之前调整。一个简单的策略是让ρˆ(y)=γσˆ(y)以交互的方式做去噪计算。

    噪声估计子网CNNE是五层全卷积网络,没有池化和批量归一化(BN)操作。每个卷积层特征通道32,滤波器大小3×3。在每个卷积层之后有ReLU。与CNNE不同,非盲去噪子网络CNND采用U-Net架构,以y和σˆ(y)作为输入,在无噪干净图像给出预测x。通过残差学习学习残差映射R(y,σˆ(y); WD)然后预测x = y + R(y,σˆ(y); WD)。CNNE的16层U-Net架构引入对称跳跃连接、跨步卷积和转置卷积,来利用多尺度信息并扩大感受野。所有滤波器大小均为3×3,除最后一个,每个卷积层之后加ReLU。

    将如下定义的不对称损失引入噪声估计子网,并与重建损失结合一起,训练完整的CBDNet:

    640?wx_fmt=png

    此外,引入一个全局变化(TV)正则化来约束σˆ(y)的平滑度,

    640?wx_fmt=png

    其中∇h(∇v)表示水平(垂直)方向的梯度算子。

    重建损失为

    640?wx_fmt=png

    总损失函数

    640?wx_fmt=png

    一些结果例子:

    640?wx_fmt=jpeg

    图像去雾

    单图像去雾是一个具有挑战性的病态问题。现有方法使用各种约束/先验来获得似乎合理的除雾解决方案。实现去雾的关键是估计输入雾霾图像的介质传输图(medium transmission map)。

    • DehazeNet

    DehazeNet是一个可训练的端到端系统,用于介质传输估计。DehazeNet将雾图像输入,输出其介质传输图,随后通过大气散射模型(atmospheric scattering model)恢复无雾图像。DehazeNet采用CNN的深层架构,设计能体现图像去雾的假设/先验知识。具体而言,Maxout单元层用于特征提取,几乎所有与雾相关的特征。还有一种新的非线性激活函数,称为双边整流线性单元(Bilateral Rectified Linear Unit,BReLU),提高图像的无雾恢复质量。

    下图是DehazeNet架构图。在概念上DehazeNet由四个顺序操作(特征提取、多尺度映射、局部极值和非线性回归)组成,它由3个卷积层、最大池化、Maxout单元和BReLU激活函数构成。下面依次介绍四个操作细节。

    640?wx_fmt=jpeg

    1) 特征提取:为了解决图像去雾问题的病态性,现有方法提出了各种假设,并且基于这些假设,在图像域密集地提取与雾度相关的特征,例如,著名的暗通道(dark channel),色调差和颜色衰减等;为此,选择具有特别激活函数的Maxout单元作为降维非线性映射;通常Maxout用于多层感知器(MLP)或CNN的简单前馈非线性激活函数;在CNN使用时,对k仿射特征图逐像素最大化操作生成新的特征图;设计DehazeNet的第一层如下

    640?wx_fmt=png

    其中

    640?wx_fmt=jpeg
    640?wx_fmt=jpeg

    分别代表滤波器和偏差。

    2) 多尺度映射:多尺度特征已经被证明对于去除雾度是有效的;多尺度特征提取实现尺度不变性有效;选择在DehazeNet的第二层使用并行卷积运算,其中任何卷积滤波器的大小在3×3、5×5和7×7之间,那么第二层的输出写为

    640?wx_fmt=png

    其中

    640?wx_fmt=png
    640?wx_fmt=png

    包含分为3组的n2对参数, n2是第二层的输出维度,i∈[1,n2]索引输出特征图,⌈⌉向上取整数,\表示余数运算。

    3) 局部极值:根据CNN的经典架构,在每个像素考虑邻域最大值可克服局部灵敏度;另外,局部极值是根据介质传输局部恒常的假设,并且通常用于克服传输估计的噪声;第三层使用局部极值运算,即

    640?wx_fmt=png

    注:局部极值密集地应用于特征图,能够保持图像分辨率。

    4) 非线性回归:非线性激活函数的标准选择包括Sigmoid和ReLU;前者容易受到梯度消失的影响,导致网络训练收敛缓慢或局部最优;为此提出了ReLU ,一种稀疏表示方法;不过,ReLU仅在值小于零时才禁止输出,这可能导致响应溢出,尤其是在最后一层;所以采用一种BReLU激活功能,如图所示;BReLU保持了双边约束(bilateral restraint)和局部线性;这样,第四层特征图定义为

    640?wx_fmt=jpeg
    640?wx_fmt=png

    这里W4 = {W4}包含一个大小为n3×f4×f4的滤波器,B4 = {B4}包含一个偏差,tmin, max是BReLU的边际值(tmin = 0和tmax = 1) 。根据上式,该激活函数的梯度可以表示为

    640?wx_fmt=jpeg

    将上述四层级联形成基于CNN的可训练端到端系统,其中与卷积层相关联的滤波器和偏置是要学习的网络参数。

    • EPDN

    论文将图像去雾问题简化为图像到图像的转换问题,并提出增强的Pix2pix去雾网络(EPDN),它可以生成无雾图像,而不依赖于物理散射模型。EPDN由生成对抗网络(GAN)嵌入,然后是增强器。一种理论认为视觉感知是全局优先的,那么鉴别器指导生成器在粗尺度上创建伪真实图像,而生成器后面的增强器需要在精细尺度上产生逼真的去雾图像。增强器包含两个基于感受野模型的增强块,增强颜色和细节的去雾效果。另外,嵌入式GAN与增强器是一起训练的。

    如图是EPDN架构的示意图,由多分辨率生成器模块,增强器模块和多尺度鉴别器模块组成。即使pix2pixHD使用粗到细特征,结果仍然缺乏细节并且颜色过度。一个可能的原因是现有的鉴别器在引导生成器创建真实细节方面受到限制。换句话说,鉴别者应该只指导生成器恢复结构而不是细节。为了有效地解决这个问题,采用金字塔池化模块,以确保不同尺度的特征细节嵌入到最终结果中,即增强块。从目标识别的全局上下文信息中看出,在各种尺度需要特征的细节。因此,增强块根据感受野模型设计,可以提取不同尺度的信息。

    640?wx_fmt=jpeg

    如图是增强块的架构:有两个3×3前端卷积层,前端卷积层的输出缩减,因子分别是4×,8×,16×,32×,这样构建四尺度金字塔;不同尺度的特征图提供了不同的感受域,有助于不同尺度的图像重建;然后,1×1卷积降维,实际上1×1卷积实现了自适应加权通道的注意机制;之后,将特征图上采样为原始大小,并与前端卷积层的输出连接在一起;最后,3×3卷积在连接的特征图上实现。

    640?wx_fmt=jpeg

    在EPDN中,增强器包括两个增强块。第一个增强块输入是原始图像和生成器特征的连接,而这些特征图也输入到第二个增强块。

    • PMS-Net

    补丁图选择网络(Patch Map Selection Network,PMS-Net)是一个自适应和自动化补丁尺寸选择模型,主要选择每个像素对应的补丁尺寸。该网络基于CNN设计,可以从输入图像生成补丁图。其去雾算法的流程图如图所示。

    640?wx_fmt=jpeg

    为了提高该网络的性能,PMS-Net提出一种有金字塔风格的多尺度U-模块。基于补丁图,可预测更精确的大气光和透射图。所提出的架构,可以避免传统DCP的问题(例如,白色或明亮场景的错误恢复),恢复图像的质量高于其他算法。其中,定义了一个名为补丁图(patch map)的来解决暗通道先验(DCP)补丁大小固定的问题。

    如图是PMS-Net的架构,分为编码器和解码器。最初,输入的雾图像和16个3×3内核的滤波器卷积投影到更高维空间。然后,多尺度-U模块从更高维数据中提取特征。多尺度U-模块的设计如图左侧所示。

    640?wx_fmt=jpeg

    输入将通过几个Multiscale-W-ResBlocks(MSWR),如下图左侧所示。MSWR的设计想法类似Wide-ResNet(WRN),通过增加网络宽度和减小深度来改进ResNet。每块中使用快捷方式执行Conv-BN-ReLu-Dropout-Conv-BN-ReLu这一系列操作提取信息。MSWR中多尺度概念类似Inception-ResNet,采用多层技术来增强信息的多样性,并提取详细信息。

    640?wx_fmt=jpeg

    多尺度U-模块中的其他部分,Multi-Deconv模块将信息与MSWR而不是反卷积的输出连接在一起,因为反卷积层可以帮助网络重建输入数据的形状信息。因此,通过多尺度反卷积组合,可以从网络前层重建更精确的特征图。此外,Multi-Deconv执行金字塔风格并提高尺度与MSWR连接。也就是说,不同层特征图以不同的尺度运行去卷积(参见多尺度U-模块图右侧)。

    为保留高分辨率,MSWR和Multi-Deconv模块的输出直接连接。然后,特征图馈送到网络更高层的Multi-Deconv模块和解码器。解码器采用全局卷积网络模块(global convolutional network modules,GCN)。边界细化模块(boundary refinement,BR)也用于边缘信息保留。上采样操作升级尺度层。此外,采用致密连接样式合并高与低分辨率的信息。PMS-Net可以预测补丁图。

    下图是一些实验结果的分析:白色和明亮场景中去雾结果的比较;第1栏:输入图像; 第2栏:通过固定尺寸补丁DCP的结果; 第3栏:PMS-Net方法的结果; 第4栏:第2栏和第3栏中白色或亮部的放大; 第5栏:补丁图; 第6-7栏:分别由DCP和PMS-Net方法估计的介质传输图

    640?wx_fmt=jpeg

    图像去模糊

    这是一种多尺度卷积神经网络,以端到端的方式恢复清晰的图像,其中模糊是由各种来源引起的,包括镜头运动、景物深度和物体运动。如图是定义的网络模型架构图,称为ResBlocks:(a)原始残余网络构建块,(b)该网络修正的模块化构建块;没有使用批量归一化(BN)层,因为训练模型使用的小批量(mini-batch)大小为2,比BN通常要小;在输出之前去除整流线性单元(ReLU)有利于提高经验性能。

    640?wx_fmt=jpeg

    设计的去模糊多尺度网络架构见下图所示:Bk,Lk,Sk分别表示模糊、潜在和GT清晰图像。下标k表示高斯金字塔第k个尺度层,下采样到1 / 2k尺度。该模型将模糊的图像金字塔作为输入并输出估计的潜在图像金字塔。每个中间尺度的输出都训练成清晰。在测试时,选择原始尺度的输出图像作为最终结果。

    640?wx_fmt=jpeg

    用ResBlocks堆叠足够数量的卷积层,每个尺度的感受野得以扩展。在训练时,将输入和输出高斯金字塔补丁的分辨率设置为{256×256,128×128,64×64}。连续尺度之间的比例(scale ratio)是0.5。对所有卷积层,滤波器大小为5×5。因为模型是全卷积,在测试时补丁大小可能变化。

    定义一个多尺度损失函数模拟传统的粗到精方法

    640?wx_fmt=jpeg

    其中Lk,Sk分别表示在尺度层k的模型输出图像和GT图像。而对抗损失函数定义为

    640?wx_fmt=jpeg

    其中G和D分别是生成器和鉴别器。最终的损失函数是

    640?wx_fmt=png

    一些结果如图所示,有几个缩放的局部细节。

    640?wx_fmt=jpeg

    具有深度觉察和视角聚合(Depth Awareness and View Aggregation)的网络DAVANet是一个立体图像去模糊网络。网络中来自两个视图有深度和变化信息的3D场景线索合并在一起,动态场景中有助于消除复杂空间变化的模糊。具体而言,通过这个融合网络,将双向视差估计和去模糊整合到一个统一框架中。

    下图描述立体视觉带来的模糊:(a)是与图像平面平行的相对平移引起的深度变化模糊,(b)和(c)是沿深度方向的相对平移和旋转引起的视角变化模糊。注意,所有复杂运动可以分解为这三个相对子运动模式。

    640?wx_fmt=jpeg

    如图(a)所示,我们可以得到:

    640?wx_fmt=png

    其中ΔX,ΔP,f和z分别表示模糊的大小、目标点的运动、焦距和目标点的深度。

    如图(b)所示,我们知道:

    640?wx_fmt=png

    其中b是基线,h是左摄像头CL和线段PtPt+1之间的距离。

    如图(c)所示,两个镜头的速度vCL,vCR与相应旋转半径CLO,CRO成正比,即

    640?wx_fmt=png

    DAVANet总体流程图如图所示,由三个子网络组成:用于单镜头去模糊的DeblurNet,用于双向视差估计的DispBiNet,和以自适应选择方式融合深度和双视角信息的FusionNet。这里采用小卷积滤波器(3×3)来构造这三个子网络,因为大型滤波器并不能提高性能。

    640?wx_fmt=jpeg

    DeblurNet的结构基于U-Net,如图(a)所示。用基本残差模块作为构建块,编码器输出特征为输入尺寸的1/4×1/4。之后,解码器通过两个上采样残差块全分辨率重建清晰图像。在编码器和解码器之间使用相应特征图之间的跳连接(skip-connections)。此外,还采用输入和输出之间的残差连接。这使网络很容易估计模糊-尖锐(blurry-sharp)图像对之间的残差并保持颜色一致性。还有,在编码器和解码器之间使用两个空洞残差(atrous residual)块和一个Context模块来获得更丰富的特征。DeblurNet对两个视图使用共享权重。

    受以前DispNet模型结构的启发,采用一个小型DispBiNet,如图(b)所示。与DispNet不同,DispBiNet可以预测一个前向过程的双向视差。输出是完整分辨率,网络有三次下采样和上采样操作。此外,DispBiNet中还使用了残差块、空洞残差块和Context模块。

    为了嵌入多尺度特征,DeblurNet和DispBiNet采用Context模块,它包含具有不同扩张率(dilated rate)的并行扩张卷积(dilated convolution),如图所示。四个扩张率是设置为1, 2, 3, 4。Context模块融合更丰富的分级上下文信息,有利于消除模糊和视差估计。

    640?wx_fmt=jpeg

    为了利用深度和双视角信息去模糊,引入融合网络FusionNet来丰富具有视差和双视角的特征。如图所示,FusionNet采用原始立体图像IL,IR,估计的左视图DL视差,DispBiNet倒数第二层的特征FD和DeblurNet编码器的特征FL,FR作为输入,以生成融合特征FLfuse。

    为双视角聚合,估计的左目视差DL将DeblurNet的右目特征FR变形到左目,即为WL(FR)。不用直接连接WL(FR)和FL,而是子网GateNet生成从0到1的软门图(soft gate map)GL。门图可以自适应选择方式用来融合特征FL和WL(FR),即选择有用的特征,并从另一个视角拒绝不正确的特征。例如,在遮挡或错误视差区域,门图值往往为0,这表明只采用参考视角F L的特征。GateNet由五个卷积层组成,如图所示,输入是左图像IL和变形的右图像WL(IR)的绝对差,即| IL - WL(IR)|,输出是单通道的门图。所有特征通道共享相同的门图以生成聚合特征:

    640?wx_fmt=png
    640?wx_fmt=jpeg

    为深度觉察,使用三个卷积层的子网络DepthAwareNet,而且两个视角不共享该子网络。给定视差DL和DispBiNet的倒数第二层特征FD,DepthAwareNet-left产生深度关联的特征FL。事实上,DepthAwareNet隐式地学习深度觉察的先验知识,这有助于动态场景的去模糊。

    最后,连接原始左图特征FL,视角聚合特征FLviews和深度觉察特征FLdepth生成融合的左视角特征FLfuse。然后,将FLfuse供给DeblurNet的解码器。同理,采用FusionNet一样的架构可以得到右视角的融合特征。

    DeblurNet损失函数包括两个部分:MSE损失和感知损失,即

    640?wx_fmt=jpeg

    其中

    640?wx_fmt=jpeg
    640?wx_fmt=png

    DispBiNet的视差损失函数如下:

    640?wx_fmt=png

    如图显示的是视差对去模糊的作用:(a)(f)(g)和(h)分别表示模糊图像、清晰图像、预测的视差和GT视差。(b)和(e)是单目去模糊网络DeblurNet和双目去模糊网络DAVANet的结果。在(c),两个左图像输入,DispBiNet不能为深度觉察和视角聚合提供任何深度信息或视差。在(d)中,为了消除视角聚合的影响,不会从FusionNet中其他视图变形该特征。由于该网络可以准确估计和采用视差,因此其性能优于其他方法

    640?wx_fmt=jpeg

    图像增强

    • Deep Bilateral Learning

    这是一种做图像增强的神经网络架构,其灵感来自双边网格处理(bilateral grid processing)和局部仿射颜色变换。基于输入/输出图像对,训练卷积神经网络来预测双边空间(bilateral space)局部仿射模型的系数。网络架构目的是学习如何做出局部的、全局的和依赖于内容的决策来近似所需的图像变换。输入神经网络是低分辨率图像,在双边空间生成一组仿射变换,以边缘保留方式切片(slicing)节点对这些变换进行上采样,然后变换到全分辨率图像。该模型是从数据离线训练的,不需要在运行时访问原始操作。这样模型可以学习复杂的、依赖于场景的变换。

    如图所示,对低分辨率的输入I的低分辨率副本I~执行大部分推断(图顶部),类似于双边网格(bilateral grid)方法,最终预测局部仿射变换。图像增强通常不仅取决于局部图像特征,还取决于全局图像特征,如直方图、平均强度甚至场景类别。因此,低分辨率流进一步分为局部路径和全局路径。将这两条路径融合在一起,则生成代表仿射变换的系数。

    而高分辨率流(图底部)在全分辨率模式工作,执行最少的计算,但有捕获高频效果和保留边缘的作用。为此,引入了一个切片节点。该节点基于学习的导图(guidance map)在约束系数的低分辨率格点做数据相关查找。基于全分辨率导图,给定网格切片获得的高分辨率仿射系数,对每个像素做局部颜色变换,产生最终输出O。在训练时,在全分辨率下最小化损失函数。这意味着,仅处理大量下采样数据的低分辨率流,仍然可以学习再现高频效果的中间特征和仿射系数。

    640?wx_fmt=jpeg

    下面可以从一些例子看到各个改进的效果。如图所示,低级卷积层具备学习能力,可以提取语义信息。用标准双边网格的喷溅操作(splatting operation)替换这些层会导致网络失去很大的表现力。

    640?wx_fmt=jpeg

    如图所示,全局特征路径允许模型推理完整图像,(a)例如再现通过强度分布或场景类型的调整。(b)如果没有全局路径,模型可以做出空间不一致的局部决策。

    640?wx_fmt=jpeg

    如图所示,新切片节点对架构的表现力及其对高分辨率效果的处理至关重要。用反卷积滤波器组替换该节点会降低表现力(b),因为没有使用全分辨率数据来预测输出像素。由于全分辨率导图,切片层以更高的保真度(c)逼近。

    640?wx_fmt=jpeg

    如图所示,(b)HDR的亮度畸变,特别是在前额和脸颊的高光区域出现的海报化畸变(posterization artifacts)。相反,切片节点的导图使(c)正确地再现(d)基础事实GT。

    640?wx_fmt=jpeg

    • Deep Photo Enhancer

    它提出一种不成对学习(unpaired learning)的图像增强方法。给定一组具有所需特征的照片,该方法学习一种照片增强器,将输入图像转换为具有这些特征的增强图像。在基于双路(two-way)生成对抗网络(GAN)框架基础上,改进如下:1)基于全局特征扩充U-Net,而全局U-Net是GAN模型的生成器;2)用自适应加权方案改进Wasserstein GAN(WGAN),训练收敛更快更好,对参数敏感度低于WGAN-GP;3)在双路GAN的生成器采用单独BN层,有助于生成器更好地适应自身输入分布,提高GAN训练的稳定性。

    如图介绍了双路GAN的架构。(a)是单向GAN的架构。给定输入x∈X,生成器GX将x变换为y'= GX(x)∈Y。鉴别器DY旨在区分目标域{y}中的样本和生成的样本{y'= GX(x)}。为了实现循环一致性,双路GAN被采用,例如CycleGAN 和DualGAN 。它们需要G'Y(GX(x))= x,其中生成器G'Y采用GX生成的样本并将其映射回源域X。此外,双路GAN通常包含前向映射(X →Y)和后向映射(Y→X)。(b)显示了双路GAN的体系结构。在前向传播时,

    640?wx_fmt=png

    ,检查x''和x之间的一致性。在后向传播时,

    640?wx_fmt=png

    ,检查y和y''之间的一致性。

    640?wx_fmt=jpeg

    如图是GAN的生成器和鉴别器架构。生成器器基于U-Net,但添加全局特征。为了提高模型效率,全局特征的提取与U-Net的收缩部分共享前五层局部特征的提取。每个收缩步骤包括5×5滤波、步幅为2、SELU激活和BN。对全局特征来说,假定第五层是32×32×128特征图,收缩后进一步减小到16×16×128然后8×8×128。通过全连接层、SELU激活层和另一个全连接层,将8×8×128特征图减少到1×1×128。然后将提取的1×1×128全局特征复制32×32个拷贝,并和低级特征32×32×128之后相连接,得到32×32×256特征图,其同时融合了局部和全局特征。在融合的特征图上执行U-Net的扩展路径。最后,采用残差学习的思想,也就是说,生成器只学习输入图像和标注图像之间的差异。

    640?wx_fmt=jpeg

    WGAN依赖于训练目标的Lipschitz约束:当且仅当它梯度模最多是1时,一个可微函数是1-Lipschtiz 。为了满足约束条件,WGAN-GP通过添加以下梯度惩罚直接约束鉴别器相对于其输入的输出梯度模,

    640?wx_fmt=jpeg

    其中yˆ是沿目标分布与生成器分布之间的直线的采样点。

    参数λ加权原鉴别器损失的惩罚。λ确定梯度趋进1的趋势。如果λ太小,无法保证Lipschitz约束。另一方面,如果λ太大,则收敛可能缓慢,因为惩罚可能过重加权鉴别器损失。λ的选择很重要。相反,使用以下梯度惩罚,

    640?wx_fmt=jpeg

    这更好地反映了要求梯度小于或等于1并且仅惩罚大于1部分的Lipschitz约束。更重要的是,可采用自适应加权方案调整权重λ,选择适当的权重,即梯度位于所需的间隔内,比如[1.001, 1.05]。如果滑动窗(大小= 50)内的梯度移动平均值(moving average of gradients)大于上限,则意味着当前权重λ太小而且惩罚力不足以确保Lipschitz约束。因此,通过加倍权重来增加λ。另一方面,如果梯度移动平均值小于下限,则将λ衰减一半,这样就不会变得太大。这个改进,称为A-GAN(自适应GAN)。

    前面图(a)生成器作GX而图(b)鉴别器用作DY,得到以前图(a)单路GAN的架构。同样推广A-GAN可以得到如以前图(b)的双路GAN架构。

    • Deep Illumination Estimation

    这是一种基于神经网络增强曝光不足照片的方法,其中引入中间照明(intermediate illumination),将输入与预期的增强结果相关联,也加强了网络的能力,能够从专家修改的输入/输出图像对学习复杂的摄影修整过程。基于该模型,用照明的约束和先验定义一个损失函数,并训练网络有效地学习各种照明条件的修整过程。通过这些方式,网络能够恢复清晰的细节,鲜明的对比度和自然色彩。

    从根本上说,图像增强任务可以被称为寻找映射函数F,从输入图像I增强,I ̃ = F(I)是期望的图像。在Retinex的图像增强方法中,F的倒数通常建模为照明图S,其以像素方式与反射图像I ̃相乘产生观察图像I:I = S * I ̃。

    可以将反射分量I ̃视为曝光良好的图像,因此在模型中,I ̃作为增强结果,I作为观察到的未曝光图像。一旦S已知,可以通过F(I)= S-1 * I获得增强结果I ̃. S被模型化为多通道(R,G,B)数据而不是单通道数据,以增加其在颜色增强方面的能力,尤其是处理不同颜色通道的非线性特性。

    如图是网络的流水线图。增强曝光不足的照片需要调整局部(对比度,细节清晰度,阴影和高光)和全局特征(颜色分布,平均亮度和场景类别)。从编码器网络生成的特征考虑局部和全局上下文信息,见图上部。为了驱动网络学习从输入的曝光不足图像(Ii)到相应的专家修饰图像(I ̃)的照明映射,设计了一种损失函数,具有照明平滑度先验知识以及增强的重建和颜色损失,见图底部。这些策略有效地从(Ii,I ̃i)学习S,通过各种各样的照片调整来恢复增强的图像。值得一提的是,该方法学习低分辨率下预测图像-照明映射的局部和全局特征,同时基于双边网格的上采样将低分辨率预测扩展到全分辨率,系统实时性好。

    640?wx_fmt=jpeg

    下图展示了一些增强的结果例子(上:输入,下:增强)。

    640?wx_fmt=jpeg

    参考文献

    • 1. K Zhang et al., “Beyond a Gaussian denoiser: Residual learning of deep CNN for image denoising”,IEEE T-IP,2017

    • 2. A Ignatov et al., “DSLR-Quality Photos on Mobile Devices with Deep Convolutional Networks“,arXiv 1704.02470, 2017

    • 3. P. Svoboda et al., “Compression artifacts removal using convolutional neural networks”. arXiv 1605.00366, 2016.

    • 4. B. Cai et al.,”Dehazenet: An end-to-end system for single image haze removal”. IEEE T-IP, 2016

    • 5. X. Mao, C. Shen, Y.-B. Yang. “Image restoration using very deep convolutional encoder-decoder networks with symmetric skip connections”. Advances in Neural Information Processing Systems 29, 2016

    • 6. Z. Yan et al., “Automatic photo adjustment using deep neural networks”. ACM Trans. Graph., 2016

    • 7. M Gharbi et al.,“Deep Bilateral Learning for Real-Time Image Enhancement”, arXiv 1707.02880, 2017

    • 8. S Nah, T Kim, K Lee,“Deep Multi-scale Convolutional Neural Network for Dynamic Scene Deblurring”, CVPR, 2017

    • 9. Y Chen et al.,“Deep Photo Enhancer: Unpaired Learning for Image Enhancement from Photographs with GANs”, CVPR, 2018.

    • 10. J Zhang et al., "Dynamic Scene Deblurring Using Spatially Variant Recurrent Neural Networks", CVPR 2018.

    • 11. S Guo et al.,“Toward Convolutional Blind Denoising of Real Photographs”, CVPR, 2019

    • 12. R Wang et al.,“Underexposed Photo Enhancement using Deep Illumination Estimation”, CVPR 2019.

    • 13. Y Qu et al.,“Enhanced Pix2pix Dehazing Network”, CVPR, 2019

    • 14. S Zhou et al.,“DAVANet: Stereo Deblurring with View Aggregation”, CVPR 2019.

    • 15. W Chen, J Ding, S Kuo,“PMS-Net: Robust Haze Removal Based on Patch Map for Single Images”, CVPR, 2019

    640?

    有热门推荐?

    1.

    2.

    加群交流

    640?wx_fmt=jpeg欢迎小伙伴加群交流,目前已有交流群的方向包括:AI学习交流群,目标检测,秋招互助,资料下载等等;加群可扫描并回复感兴趣方向即可

    640?wx_fmt=png

    640?wx_fmt=png
    你点的每个“在看”,我都认真当成了喜欢

    展开全文
  • 版权声明:转载本博客文章,请附上链接,否则违版必究。 https://blog.csdn.net/weixin_42346564/article/details/83894235 </div> <link rel="stylesheet" href="https://csdnimg.cn/...
          版权声明:转载本博客文章,请附上链接,否则违版必究。          https://blog.csdn.net/weixin_42346564/article/details/83894235        </div>
            <link rel="stylesheet" href="https://csdnimg.cn/release/phoenix/template/css/ck_htmledit_views-cd6c485e8b.css">
                              <link rel="stylesheet" href="https://csdnimg.cn/release/phoenix/template/css/ck_htmledit_views-cd6c485e8b.css">
          <div class="htmledit_views" id="content_views">
            <blockquote>
    

    图像算法工程师三重境界 :


    一、传统图像算法工程师: 
    主要涉及图形处理,包括形态学、图像质量、相机成像之3A算法、去雾处理、颜色空间转换、滤镜等,主要在安防公司或者机器视觉领域,包括缺陷检测;

    二、现代图像算法工程师
    涉及模式识别,主要表现的经验为Adaboost、SVM的研究与应用,特征选取与提取,包括智能驾驶的研究与应用、行人检测、人脸识别;

    三、人工智能时代图像算法工程师: 
    深度学习,主要在大型互联网公司或者研究所机构,具体体现在TensorFlow等开源库的研究与应用,包括机器人的研究、基于深度学习的人脸识别;

     首先!!!算法工程师包括:

    • 音/视频算法工程师(通常统称为语音/视频/图形开发工程师)

    • 图像处理算法工程师

    • 计算机视觉算法工程师

    • 通信基带算法工程师

    • 信号算法工程师

    • 射频/通信算法工程师

    • 自然语言算法工程师

    • 数据挖掘算法工程师

    • 搜索算法工程师

    • 控制算法工程师(云台算法工程师,飞控算法工程师,机器人控制算法)

    • 导航算法工程师

    • 其他【其他一切需要复杂算法的行业】

    图像处理算法工程师

    相关术语:
    (1) OCR:OCR (Optical Character Recognition,光学字符识别)是指电子设备(例如扫描仪或数码相机)检查纸上打印的字符,通过检测暗、亮的模式确定其形状,然后用字符识别方法将形状翻译成计算机文字的过程
    (2) Matlab:商业数学软件;
    (3) CUDA: (Compute Unified Device Architecture),是显卡厂商NVIDIA推出的运算平台(由ISA和GPU构成)。 CUDA™是一种由NVIDIA推出的通用并行计算架构,该架构使GPU能够解决复杂的计算问题
    (4) OpenCL: OpenCL是一个为异构平台编写程序的框架,此异构平台可由CPU,GPU或其他类型的处理器组成。
    (5) OpenCV:开源计算机视觉库;OpenGL:开源图形库;Caffe:是一个清晰,可读性高,快速的深度学习框架。
    (6) CNN:(深度学习)卷积神经网络(Convolutional Neural Network)CNN主要用来识别位移、缩放及其他形式扭曲不变性的二维图形。
    (7) 开源库:指的是计算机行业中对所有人开发的代码库,所有人均可以使用并改进代码算法。

    1必备技能总结

    职位要求

    编程技能:

    1、 具有较强的编程能力和良好的编程习惯, 精通c/c++编程,并熟练使用VS 或matlab开发环境;

    2、 在计算机技术领域拥有扎实的技术功底,尤其在数据结构、算法和代码、软件设计方面功力深厚;

        对数据结构有一定的研究基础如链表、堆杖、树等,熟悉数据库编程;

    3、 出色的算法分析能力,对某一特定算法可以做广泛的综述,有实际算法实现经验;

    4、 熟悉面向对象编程思想,精于windows下的C/C++、VC++程序设计,熟悉MATLAB,对MFC有相对的了解和应用经验;

     

    专业技能:

    1、扎实的数学功底和分析技能,精通计算机视觉中的数学方法;

         高等数学(微积分)、线性代数(矩阵论)、随机过程、概率论、

         摄影几何、模型估计、数理统计、张量代数、数据挖掘、数值分析等;

    2、具备模式识别、图像处理、机器视觉、信号处理和人工智能等基础知识;

         对图像特征、机器学习有深刻认识与理解;

    3、精通图像处理基本概念和常用算法包括图像预处理算法和高级处理算法;

         常见的图像处理算法,包括增强、分割、复原、形态学处理等; 

         熟悉常见的模式识别算法,特别是基于图像的模式识别算法,掌握特征提取、特征统计和分类器设计; 
    4、熟练使用OpenCV、Matlab、Halcon中的一种或一种以上工具库;
    5、熟悉机器视觉系统的硬体选型,包括CCD相机,镜头及光源;熟悉相机与镜头搭配;

     

    外语:

    1. 英文熟练,能够熟练阅读和理解专业英文资料,有英文文献检索和阅读能力;
    2. 良好的英语沟通能力

    综合能力:

    1.对工作认真负责,积极主动,勤奋踏实;

    2.做事严谨,注重细节,有耐心,能够在压力下独立工作;

    3.学习钻研能力强,有较强的理解能力和逻辑思维能力和良好的创新意识;

    4.良好的协调沟通能力和团队合作精神; 

     

    视觉算法经验:请提供实现的算法列表

        目标识别、图像配准、三维测量、标定和重建、手势识别; 

        表面缺陷检测;尺寸测量;特征识别;

        图像去噪、滤波、融合算法
        3A算法:如自动曝光、自动对焦、自动白平衡

     

    岗位职责:

    1、负责计算机视觉中的图像采集,处理面阵和线扫描相机的成像和控制 ;
    2、针对特定的计算机视觉问题,设计目标识别与快速定位与检测算法的实现,并进行优化;
    3、对彩色图像和灰度图像实现物体表面的污点划痕检测算法设计和实现;
    4、处理三维物体表面数据获取和实现三维测量算法的实现;
    5、处理点激光和线激光源的成像,散斑噪声滤波和轮廓检测;
    6、负责算法与软件GUI开发工程师接口;
    7、完成上级领导交办的其他的工作。

     

    2面试题大全

     

    1-图像基础知识:

    1.常用的图像空间。

    2.简述你熟悉的聚类算法并说明其优缺点。

    3.请描述以下任一概念:SIFT/SURF  LDA/PCA

    4.请说出使用过的分类器和实现原理。

    5. Random Forest的随机性表现在哪里。

    6. Graph-cut的基本原理和应用。

    7. GMM的基本原理和应用。

    8.用具体算法举例说明监督学习和非监督学习的区别。

     

    2-笔试

    大概有: 
    1.表示图像的特征有哪些? 
    纹理,频率,梯度这种 
    2.写出canny边缘提取算法的原理
    3.图像插值方法 
    4.自己设计一个OCR引擎 
    5.写出Kmeans程序,并在一个设计环境中怎样使用 
    6.中值滤波
    7.static的作用 
    8.写一个c++宏
    9.二分查找 

    整数翻转,如何处理越界问题

    C++多态,静态联编和动态联编,虚函数表

    模型融合如何做

    提升树的思想,随机森林和提升树的区别

    SVM推导,对偶性的作用,核函数有哪些,有什么区别

    python两个每行都是数字的文件合并,去重。

    shell编程,编辑文件。

    进程与线程的区别

    卷积神经网络介绍

    SVM的推导

    大文件求交集,如何解决哈希之后小文件还是放不进内存

    堆排序代码

    连续和最大问题,如何证明?

    bp算法介绍,梯度弥散问题。

    svm介绍,优缺点是什么,lr介绍,区别是什么

    lr与线性回归的区别

    如果要预测房价,用什么模型

    如果要预测房价,并且知道一个房间的房型信息,如何构建模型

    sigmoid 函数的应用有哪些,为什么?

    列举十种常用的神经网络模型

    语音识别模型有哪些

    如何识别一个人在喝酒,需要几个模型

    卷积神经网络中卷积如何实现,激活函数的意义,损失函数有哪些,初始化参数如何选择

    用过哪些深度学习框架,TensorFlow中的session是什么,session和interactivesession的区别

    如何实现卷积层权值共享

    如何保存模型,读取已有的模型

    用过哪些深度学习模型,区别是什么。

    了解哪些寻优算法

    softmax损失函数作用是

    c++ 的 const,static作用

    强制类型转换cast之间的区别

    svm推导,核函数的体现,常用的核函数有哪些

    alexnet介绍

    过拟合的原因,有哪些避免过拟合的trick

    1G的文本统计词频,输出频率最高的1000个词

    手写topk的代码,快排。代码还能如何优化,如果要上线的话还需要做哪些处理

    如果分类样本的标签只有一定的概率可信,如何处理

    如何设置负样本

    过拟合的原因,有哪些防止过拟合的方法

    模型评价如何做,其中存在哪些问题

    决策树算法有哪些,随机森林和GBDT的区别

    降维方法,PCA原理

    哈夫曼树在机器学习中的应用

    文本挖掘算法了解哪些

    人流量预测系统如何设计

    profession笔试:最优的进程调度算法,至少用多少个cpu

    英语自我介绍,口语渣猝不及防

    联想研究院 模式识别研究员 offer

    异常值的影响,如何消除

    所有了解的机器学习算法有哪些,框架性讲述

    梯度下降算法了解哪些,优劣势是什么

    二叉树中序遍历,递归和非递归

    linux操作指令了解哪些,文本处理指令有哪些

    一亿个数的文件,如何分成两个文件a,b,使得a文件的数都小于b,同时文件大小要差不多。

    均匀分布如何生成正态分布

    SVM原理,支撑向量越多越好还是越少越好

    二叉树深度遍历,时间复杂度和空间复杂度

    二维排序矩阵搜索

    项目中的长时间推广问题,如何考虑样本之间非独立的影响。

    编程题,矩阵中的最短路,有门有钥匙。动态规划加状态向量。

    贝叶斯公式,实际如何计算,如何解决精度问题。

    字符串转数字

    svm核函数有哪些,如何选取,手写表达式

    降维方法介绍

    c的虚函数,虚函数指针和虚函数表存在哪儿

    Linux 文件权限修改,参数介绍

    模型的比较如何做

    随机森林和提升树

    卷积神经网络原理

    如何避免网络的过拟合

    如何网络调优

    Python 的数据结构有哪些

    tuple 和set的区别,set的底层实现

    hash表的算法有哪些

    svm推导,一直到序列最小化求解。核函数如何体现,有哪些类型。

    构建分类器的整个流程是什么

    数据清洗方法,缺失值处理方法,降维方法

    pca原理推导

    决策树算法的介绍

    二维排序数组搜索

    如何构建欺诈交易识别的模型?

    不均衡的数据如何分类

    归并排序,二维排序数组搜索,中序遍历重构二叉树

    svm推导,为什么要用拉格朗日乘数法,对偶问题是什么

    KKT条件都有什么,如何求解svm的最优化问题

    数据不均衡如何解决,抽样得到的分类准确率如何转换为原准确率。

    逻辑回归原理,推导求解方法。

    为什么选用对数极大似然函数作为优化目标,用平方损失有什么问题。

    逻辑回归对特征有什么要求,是否需要做离散化,离散化的好处与坏处。

    …………

    ……


    原文:https://blog.csdn.net/litongwei7601/article/details/80132679 

    展开全文
  • 深度学习算法现在是图像处理软件库的组成部分。在他们的帮助下,可以学习和训练复杂的功能;但他们的应用也不是万能的。 “机器学习”和“深度学习”有什么区别? 在机器视觉和深度学习中,人类视觉的力量和对...

    深度学习算法现在是图像处理软件库的组成部分。在他们的帮助下,可以学习和训练复杂的功能;但他们的应用也不是万能的。

    “机器学习”和“深度学习”有什么区别?

    在机器视觉和深度学习中,人类视觉的力量和对视觉信息的理解可以被再现甚至超越。借助深度学习,作为机器学习的一部分,可以在应用实例的基础上学习和训练复杂的关系。

    机器学习中的另一种技术是例如“超级矢量机”。与深度学习相比,必须手动定义和验证功能。在深度学习中,神经网络采用这一手动步骤:在训练过程中,独立地自动识别和提取特征。

    深度学习为图像处理技术和图像处理检查提供了哪些选择?

    深度学习可用于典型的分类应用,例如缺陷检测或“好”和“坏”对象之间的区别。经过适当训练的网络可用于解决所有图像处理任务,其中系统决定图像中是否存在某些类型的缺陷。深度学习对于传统机器视觉方法无效应用尤其有用。例如,当由于对象或错误类的复杂性而没有普遍有效的方法来解决问题时就是这种情况。

    由于各种潜在缺陷,实际上不可能手动开发能够检测和定位整个可想到的错误范围的算法。这些可以是各种损坏,例如划痕,裂缝或凹痕,其又可以具有许多不同的形状或尺寸。在用于错误检测的传统方法中,机器视觉专家将不得不单独地查看和评估大量图像,并且在此基础上编程尽可能详细地描述相应缺陷的算法。这个过程非常耗时耗力。

    深度学习可以显着简化缺陷检测和缺陷检查:该技术可以自主学习特定缺陷特征,从而可以识别特定的问题类别。如果用户使用预训练的深度学习网络,例如MVTec的图像处理软件Halcon的那些网络,则每节课只需要几百个单独的样本图像。基于样本图像,算法可以训练各种各样的缺陷类型,然后可靠地识别它们。

    图像处理技术中的深度学习和基于图像处理的检查有哪些局限性?

    深度学习通常用于分类,对象检测和语义分割领域。

    深度学习是一种有用的工具,可以补充机器视觉应用作为一种补充技术。然而,单靠深度学习无法解决这些复杂的任务,因为技术只是分类数据的另一种方法。在这种情况下非常重要的是一个提供所有图像处理工具的综合工具箱。因为只有通过不同过程的组合才能完全掌握包括预处理和后处理在内的复杂应用。

    特别是在嵌入式视觉系统中,必须考虑其他因素:由于此处必须分析大量数据,因此培训通常会消耗大量资源,因此在嵌入式设备上无利可图。而且,数据分类引起了很多努力,因此需要大的计算能力和适当的硬件。因此,特别是对于时间要求极高的应用,标准CPU通常是不够的。相反,需要功能强大的硬件,如高性能GPU,这是工业嵌入式系统中的例外。

    作为图像处理软件的一部分,深度学习需要哪些算法?

    作为综合训练过程的一部分,深度学习算法可以独立地学习这些特征的典型特定模式。系统分析预先分类的图像,自动将它们分配给特定的类,并检查该“预测”是否与实际类别相对应。重复该过程直到实现最佳“预测”结果。通过这种方式,您可以训练模型(分类器),使用这些模型可以将新捕获的图像分类到此处学习的类中。

    目前已经存在哪些具有深度学习的图像处理技术应用程序,这些应用程序是未来可以想到的?

    存在大量深度学习架构,每个架构对于各个应用具有某些优点和缺点。为了在高度专业化和复杂的应用中实现强大的检测率,客户需要针对其需求进行优化和培训的网络。 “一刀切”的原则通常与此无关。

    许多基于深度学习的应用程序都包含在嵌入式领域中。这里使用各种硬件组件来加速深度学习算法的运行时间。所需要的是可以在各种专用深度学习计算单元上使用的框架。

    转载请注明:新机器视觉 » 图像处理中的深度学习技术

    展开全文
  • 图像算法深度学习总结

    千次阅读 热门讨论 2018-07-07 16:54:20
    一篇博客,来结束自己这几年来图像算法的职业生涯 总的来说,图像算法深度学习,前景不是很明朗。研究生做这个挺多的,因为大家要发论文,需要一些算法。并且,图像发论文比较容易,也就好毕业。这是学术方面的,...
  • 华为图像处理算法实习生面试记录

    千次阅读 2018-12-24 16:11:53
    岗位:算法工程师实习生(图像处理方向) 面试方式:一面电话面,二面视频面(异地原因) 面试 一面(技术面): 1、从头到尾把简历问了一遍,深剖,重点是自己干的东西 2、算法考试: 给定一个Array,再给定...
  • 图像处理深度学习

    万次阅读 2018-05-05 22:02:57
    第一种 自我激发型 基于图像处理的方法,如图像增强和图像复原,以及曾经很火的超分辨率算法。都是在不增加额外信息的前提下的实现方式。 1. 图像增强 图像增强是图像预处理中非常重要且常用的一种方法,图像...
  • 深度学习常见算法的介绍和比较

    万次阅读 多人点赞 2018-02-08 22:00:06
    很多人都有误解,以为深度...关于深度学习的理论推导,太大太复杂,一些常见的深度学习算法本人也是模模糊糊的,看过好多次的,隔断时间就会忘记,现在对其系统的整理一下(从历史,致命问题出发,再看具体算法的思想,
  • 深度学习图像处理领域中的应用综述[J].高教学刊,2018(09):72-74 1.特征表达/提取方法->特征学习 图像特征是指图像的原始特性或属性,可以分为视觉特征或统计特征。视觉特征主要是人的视觉直觉感受的自然特征...
  • AI必知的十大深度学习算法

    万次阅读 多人点赞 2018-04-04 15:30:10
    首先先让我们来定义一下什么是“深度学习”。对很多人来说,给“深度学习”下一个定义确实很有挑战,因为在过去的十年中,它的形式已经慢慢地发生了很大的变化。先来在视觉上感受一下“深度学习”的地位。下图是AI、...
  • 前段时间在雨滴云屏群里面,有人提出了一个数字游戏 "第一个人说一个1到10的数,第二个人再加一个1到10的数,先喊到100的人获胜”。然后群里就有人开始分析,谁先叫到89就一定会赢,要想叫到89,就必须要叫到78...
  • 2006年,加拿大多伦多大学教授、机器学习领域的泰斗Geoffrey Hinton和他的学生在《科学》上发表了一篇文章,开启了深度学习在学术界和工业界的浪潮。...那么,深度学习算法在遥感图像处理领域是否也能发...
  • 深度学习算法及其应用

    万次阅读 2019-03-12 11:23:18
    2、能够使用深度学习开源工具tensorflow识别图像中的数字,对实验性能进行分析; 3、了解图像识别的基本原理。 二、实验的硬件、软件平台 硬件:计算机 软件:操作系统:WINDOWS2000...
  • 机器学习算法已经基本学习完了,在这一系列,佛爷将开始着手学习深度学习的各种算法和应用,由于本身难度偏大,我会不定期的更新,基本清楚和更加深入的研究深度学习。代码方面我基本会使用Tensorflow框架去写,原生...
  • 点击打开链接
  • 利用高性能计算加速深度学习算法

    千次阅读 2018-02-07 16:09:42
    1. 深度学习  深度学习是机器学习研究中的一个新...(由于本人不是深度学习专业人士,对深度学习理论知识不多介绍,说多了就班门弄斧了,后面主要介绍下这些深度学习算法如何进行并行化设计和优化) 2. CPU+GP
  • 如何用深度学习玩转图像处理

    万次阅读 多人点赞 2018-05-10 20:28:57
    https://zhuanlan.zhihu.com/p/32177354一方面为做资料整理用,方便后期回顾,另一方面转需--------------------------------------------------第一个重境界: 图像识别如果你开始了解深度学习图像处理,...
  • 十个常用深度学习算法

    千次阅读 2019-06-14 15:59:54
    过去十年里,人们对...从根本上讲,机器学习是运用算法从原始数据中提取信息,并用某种类型的模型进行表示,然后使用该模型对一些尚未用模型表示的其他数据来进行推断。 神经网络就是机器学习各类模型中的其中一...
  • 深度学习笔记 深度学习(六十九)darknet 实现实验 Compressing Deep Neural Networks with Pruning, Trained Quantization and Huffma 深度学习(六十八)darknet使用 深度学习(六十七)metal forge深度学习库...
  • 一年一度的校园招聘已经开始了,为了帮助参加校园招聘、社招的同学更好的准备面试,SIGAI整理出了一些常见的机器学习、深度学习面试题。理解它们,对你通过技术面试非常有帮助,当然,我们不能只限于会做这些题目,...
1 2 3 4 5 ... 20
收藏数 80,755
精华内容 32,302
关键字:

图像处理深度学习算法