一个胖子0528
Automatic Pixel-Level Crack Detection on Dam Surface Using Deep Convolutional Network 论文笔记 论文:Automatic Pixel-Level Crack Detection on Dam Surface Using Deep Convolutional Network Received: 大多数坝面裂缝检测只能实现裂缝分类及粗略的定位。像素级语义分割检测可以提供更加精确直观的检测结果。作者提出一种基于深度卷积网络的坝面裂缝检测算法。首先使用无人机进行数据采集,然后对采集到的图像进行预处理(包括裁剪、手动标注),最后对设计好的CDDS 网络结构进行训练、验证和测试。 与ResNet152-based SegNet U-Net FCN 进行了比较。 大坝是水电站的重要水利建筑物。大坝的安全运行对于水电站有着重要的意义。由于结构变形、地震、水流引起的裂缝对大坝坝体产生严重的影响并威胁到水电站的安全运行。因此,对大坝结构的定期健康评估,特别是对大坝裂缝的检测任务变得尤为重要。 根据大坝裂缝的结构特征以及裂缝强度,人们可以对大坝的结构健康进行评估和监测。传统的大坝裂缝的巡检任务通常基于人工进行检测,但是效率低下、耗时费力,浪费了大量的人工成本,因此对裂缝的自动高效检测是非常必要的。 基于计算机视觉的裂缝检测算法得到了广泛的研究。这些方法大多采用传统的图像处理技术和机器学习方法,以识别出一些简单的结构损伤。这些方法利用手工提取的特征从图像中提取特征,然后评估提取的特征是否表示缺陷。然而,上述方法的结果不可避免地受到主观因素的影响 卷积神经网络(CNN)在图像分类和识别领域取得很大的进步,基于CNN的裂缝检测算法也展示出更优异的表现。大坝裂缝的特点: 修补痕迹、噪声大、背景纹理复杂、非结构化的、分布不均匀、裂缝位置随机、背景模糊等缺点 提出了一种像素级的大坝表面裂缝检测方法,利用深卷积网络进行特征提取。利用浅卷积层的定位特征和深卷积层的抽象特征,进行 多尺度卷积级联融合和多维损失值计算 ,实现裂纹缺陷像素级分割,并以高精度、高效率等优点解决了坝面明显裂缝检测问题,消除了可能存在的安全隐患,确保了坝面安全。实验结果表明,该方法对大坝表面像素级裂缝的检测是最优的。 语义分割 PSPNet [42],ICNet [43], Deeplabv3[44],UNet [45] and SegNet [46] 语义分割网络通常分为编码网络和解码网络。 编码网络: 卷积层:用于提取输入图像的特征 池化层:减小feature map的规模,减轻计算负担。 解码网络: 反卷积层(反褶积层):上采样还原feature map大小与输入图像相同,并输出预测结果。 编解码网络结构高度对称:同时利用稀疏feature map和稠密feature map。 为了融合sparse 和 dense feature ,采用跳跃模块以连接编解码网络。编码网络: 15 卷积层:3*3 步长1 4 池化层: 2*2 步长2 解码网络: 15 反卷积层 1*1 4池化层 采用dropout和BN防止过拟合。 Skip branch 4个,1*1卷积和反卷积 每个branch计算 branch loss,4个branch loss级联为总损失的一部分。 Skip branch 的输入输出图像大小不变。卷积核的通道数必须等于输入张量的通道数。降采样 取矩阵最大值 卷积核大小 2*2 步长为2。反褶积也叫做转置卷积 通过上采样还原feature map与输入图像大小相同。 上采样方法:反褶积法、 插值法 反褶积法:对张量进行zero-padding填充最外层,再用反褶积核进行反褶积,修剪第一行和最后一行。1000副5472*3648图像使用LEAR软件手动标记。 得到504张数据集,404用于训练,50用于验证,50用于测试。 在Linux系统上使用TensorFlow构建的 在配置了8 GB GPU的HP工作站上执行培训、验证和测试 利用Anaconda建立了CDDS网络的虚拟python环境评价指标: Precision精度表示在所有预测破裂的样本中,样本的基本真实性也被破解的概率。 Recall召回表明在所有标记为开裂的样本中,样本被预测为开裂的概率。当正负样本数量存在较大差距时,仅使用精确性或召回率来评估性能是不合理的。TPR表示所有标记为裂纹的样本中被正确预测为裂纹的概率。TNR代表以标签为背景的所有样本中被正确预测为背景的概率.F-measure考虑到查全率和查准率的综合影响,F-测度是一个综合指标。IoU是目标检测领域中常用的评价定位精度的方法。IoU表示预测结果与地面真实值的交集与联合的交集的比率。大坝表面裂缝图像分为背景和裂缝两类。背景像素的数目远大于裂纹像素的数目。通常情况下,我们会同时计算背景arrears和裂缝arrears,然后以两张arrears的平均数作为最终arrears。IoU值是由背景像素决定的,不能准确表达裂纹的定位精度。使用三种学习速率10^4,10^5,10^6 使用softmax函数计算概率 使用Dice loss计算网络损失。 裂缝骨架提取:快速细化算法 调用OpenCV库,进行计算。 计算裂缝面积及长度宽度。使用其他裂缝数据集进行补充验证 ,在测试数据集上,提出的CDDS网络的裂纹IOU和F测度分别达到和 略。
无忧快乐起
雷锋网 AI 科技评论按: 百度研究院、华中科技大学、悉尼科技大学联合新作——关于无监督领域自适应语义分割的论文《 Taking A Closer Look at Domain Shift: Category-level Adversaries for Semantics Consistent Domain Adaptation》被 CCF A 类学术会议 CVPR2019 收录为 Oral 论文 。该论文提出了一种从「虚拟域」泛化到「现实域」的无监督语义分割算法,旨在利用易获取的虚拟场景标注数据来完成对标注成本高昂的现实场景数据的语义分割,大大减少了人工标注成本。 本文是论文作者之一罗亚威为雷锋网 AI 科技评论提供的论文解读。 论文地址: 1.问题背景 基于深度学习的语义分割方法效果出众,但需要大量的人工标注进行监督训练。不同于图像分类等任务,语义分割需要像素级别的人工标注,费时费力,无法大规模实施。借助于计算机虚拟图像技术,如3D游戏,用户可以几乎无成本地获得无限量自动标注数据。然而虚拟图像和现实图像间存在严重的视觉差异(域偏移),如纹理、光照、视角差异等等,这些差异导致在虚拟图像上训练出的深度模型往往在真实图像数据集上的分割精度很低。 2. 传统方法 针对上述域偏移问题,一种广泛采用的方法是在网络中加入一个域判别器Discriminator (D),利用对抗训练的机制,减少源域Source (S)和目标域Target(T)之间不同分布的差异,以加强原始网络(G)在域间的泛化能力。方法具体包括两方面: (1)利用源域的有标签数据进行有监督学习,提取领域知识: 其中Xs,Ys为源域数据及其对应标签。 (2)通过对抗学习,降低域判别器(D)的精度,以对齐源域与目标域的特征分布: 其中XT为目标域数据,无标签。 3.我们针对传统方法的改进 以上基于对抗学习的传统域适应方法只能对齐全局特征分布(Marginal Distribution),而忽略了不同域之间,相同语义特征的语义一致性(Joint Distribution),在训练过程中容易造成负迁移,如图2(a)所示。举例来说,目标域中的车辆这一类,可能与源域中的车辆在视觉上是接近的。因此,在没有经过域适应算法之前,目标域车辆也能够被正确分割。然而,为了迎合传统方法的全局对齐,目标域中的车辆特征反而有可能会被映射到源域中的其他类别,如火车等,造成语义不一致。 针对这一问题,我们在今年CVPR的论文中,向对抗学习框架里加入了联合训练的思想,解决了传统域适应方法中的语义不一致性和负迁移等键问题。具体做法见图2(b),我们采用了两个互斥分类器对目标域特征进行分类。当两个分类器给出的预测很一致时,我们认为该特征已经能被很好的分类,语义一致性较高,所以应减少全局对齐策略对这些特征产生的负面影响。反之,当两个分类器给出的预测不一致,说明该目标域特征还未被很好地分类,依然需要用对抗损失进行与源域特征的对齐。所以应加大对齐力度,使其尽快和源域特征对应。 4.网络结构 为了实现上述语义级对抗目标,我们提出了Category-Level Adversarial Network (CLAN)。 遵循联合训练的思想,我们在生成网络中采用了互斥分类器的结构,以判断目标域的隐层特征是否已达到了局部语义对齐。在后续对抗训练时, 网络依据互斥分类器产生的两个预测向量之差(Discrepancy)来对判别网络所反馈的对抗损失进行加权。网络结构如下图3所示。 图3中,橙色的线条表示源域流,蓝色的线条表示目标域流,绿色的双箭头表示我们在训练中强迫两个分类器的参数正交,以达到互斥分类器的目的。源域流和传统的方法并无很大不同,唯一的区别是我们集成了互斥分类器产生的预测作为源域的集成预测。该预测一方面被标签监督,产生分割损失(Segmentation Loss),如式(3)所示: 另一方面,该预测进入判别器D,作为源域样本。 绿色的双箭头处,我们使用余弦距离作为损失,训练两个分类器产生不同的模型参数: 目标域流中,集成预测同样进入判别器D。不同的是,我们维持两个分类器预测的差值,作为局部对齐程度的依据 (local alignment score map)。该差值与D所反馈的损失相乘,生成语义级别的对抗损失: 该策略加大了语义不一致特征的对齐力度,而减弱了语义一致的特征受全局对齐的影响,从而加强了特征间的语义对齐,防止了负迁移的产生。 最后,根据以上三个损失,我们可以得出最终的总体损失函数: 基于以上损失函数,算法整体的优化目标为: 在训练中,我们交替优化G和D,直至损失收敛。 5. 特征空间分析 我们重点关注不常见类,如图4(a)中黄框内的柱子,交通标志。这些类经过传统方法的分布对齐,反而在分割结果中消失了。结合特征的t-SNE图,我们可以得出结论,有些类的特征在没有进行域迁移之前,就已经是对齐的。传统的全局域适应方法反而会破坏这种语义一致性,造成负迁移。而我们提出的语义级别对抗降低了全局对齐对这些已对齐类的影响,很好的解决了这一问题。 6. 实验结果 我们在两个域适应语义分割任务,即GTA5 -> Cityscapes 和 SYNTHIA -> Cityscapes 上进行了实验验证。我们采用最常见的Insertion over Union作为分割精度的衡量指标,实验结果如下。从表1和表2中可以看出,在不同网络结构(VGG16,ResNet101)中,我们的方法(CLAN)域适应效果都达到了 state-of-the-art的精度。特别的,在一些不常见类上(用蓝色表示),传统方法容易造成负迁移,而CLAN明显要优于其他方法。 表 1. 由虚拟数据集GTA5 迁移至真实数据集 Cityscapes 的域适应分割精度对比。 表 2. 由虚拟数据集SYNTHIA 迁移至真实数据集 Cityscapes 的域适应分割精度对比。 第二个实验中,我们了展示隐空间层面,源域和目标域间同语义特征簇的中心距离。该距离越小,说明两个域间的语义对齐越好。结果见图 5。 最后,我们给出分割结果的可视化效果。我们的算法大大提高了分割精度。 7. 总结 《Taking A Closer Look at Domain Shift: Category-level Adversaries for Semantics Consistent Domain Adaptation》引入了联合训练结合对抗学习的设计,在无监督域适应语义分割任务中取得了较好的实验结果。该算法能应用前景广泛,比如能够很好地应用到自动驾驶中,让车辆在不同的驾驶环境中也能保持鲁棒的街景识别率。 最后 CVPR 2019 Oral 论文精选汇总,值得一看的 CV 论文都在这里(持续更新中)CVPR 2019 即将于 6 月在美国长滩召开。今年有超过 5165 篇的大会论文投稿,最终录取 1299 篇,其中 Oral 论文近 300 篇。为了方便社区开发者和学术青年查找和阅读高价值论文,AI 研习社从入选的 Oral 论文中,按应用方向挑选了部分精华论文,贴在本文,打开链接即可查看~
rabbit林恩
在深度学习广泛应用于计算机视觉之前,人们一般使用TextonForest和Random Forest based Classifiers的方法进行语义分割。 深度学习方法中常见的一种语义分割方法是图像块分类(patch classification),即利用像素周围的图像块对每一个像素进行分类。原因是网络模型通常包含全连接层(fully connect layer),而且要求固定大小的图像输入。 2014年,加州大学伯克利分校的Long等人提出全卷积网络(FCN),使得卷积神经网络不需要全连接层就可以实现密集的像素级分类,从而成为当前非常流行的像素级分类CNN架构。由于不需要全连接层,所以可以对任意大小的图像进行语义分割,而且比传统方法要快上很多。之后,语义分割领域几乎所有的先进方法都是基于该模型进行扩展的。 为了保留像素的空间位置信息,有两种方法可以解决这个问题: (1)编码器-解码器结构,编码器与解码器之间通常存在跨越连接(shortcut connections)。U-Net是这类架构中最常用的模型之一(源于: Convolutional Networks for Biomedical Image Segmentation )。 (2)使用带孔卷积(dilated/atrous convolutions),从而除去池化层。 条件随机场(CRF)通常用于后处理来进一步改善分割效果。CRF是一种基于底层图像的像素强度进行的平滑分割的图模型,原理是相似强度的像素更可能标记为同一类别。 主要贡献: 1. 为语义分割引入了端到端的全卷积网络。 2. 利用ImageNet的预训练网络做语义分割。 3. 使用反卷积层(取代线性插值)进行上采样。 4. 引入少量跳跃连接改善上采样粗糙的像素定位。 主要贡献: 使用编码-解码架构。并且将池化结果应用到译码的过程,使用的是Pooling indices(记录位置信息)而不是简单地复制特征。其实没有跳跃连接,更节省内存。 U-Net的结构更规整,是FCN的延伸,通过将编码器的每层结果拼接到译码器中得到更好的结果。 移去了VGG网络的最后两层池化层,并且后续的卷积层都采用带孔卷积。还训练了一个模块,输入卷积结果,级联了不同孔大小的带孔卷积层。 主要贡献: 1. 通过带孔卷积提取和聚合多尺度的信息。 2. 提出context module来聚合多尺度的信息。 主要贡献: 1. 采用了带孔卷积。 2. 提出了金字塔形的空洞池化(Atrous Spatial Pyramid Pooling, ASPP)。 3. 采用了全连接的CRF。 由于带孔卷积需要大量的高分辨率特征图,对计算和内存的消耗很大,因此无法利用高分辨率的精细预测。 该文章采用编码解码结构。编码器是ResNet-101,解码器是RefineNet模块,用于连接编码器中高分辨率特征和先前RefineNet中低分辨率的特征。 每一个RefineNet都有两个组件,一个组件通过对低分辨率特征的上采样操作融合不同的分辨率特征,另一个组件利用窗口为5*5且步长为1的池化层来获取背景信息。这些组件都遵循恒等映射(identity mapping)思想,采用残差连接设计。 主要贡献: 1. 精心设计了译码模块。 2. 所有模块遵循残差连接设计。 金字塔池化模块通过使用大窗口的池化层来提高感受野。使用带孔卷积来修改ResNet网络,并增加了金字塔池化模块。金字塔池化模块对ResNet输出的特征进行不同规模的池化操作,并作上采样后,拼接起来,最后得到结果。 金字塔池化模块简单来说是将DeepLab(不完全一样)ASPP之前的feature map池化了四种尺度之后,将五种feature map拼接到一起,经过卷积,最后进行预测的过程。 在ResNet的第四个阶段之后(即输入到金字塔池化模块的阶段),在主分支损失之外增加辅助损失(其他论文称为中间监督)。 主要贡献: 1. 提出了金字塔池化模块来聚合图片上下文信息。 2. 使用附加的辅助损失函数。 理论上更深的ResNet能有很大的感受野,但研究表明实际上网络更适合收集较小区域(有效感受野)内的信息,因此使用大核来扩大感受野。但是核越大,计算量越大,因此将 k x k 的卷积近似转换为 1 x k + k x 1 和 k x 1 + 1 x k 卷积的和。本文称为GCN。 编码器使用ResNet(无带孔卷积),解码器由GCNs和反卷积构成。此外还用到了边界精调(Boundary Refinement, BR)的简单残差块。 主要贡献:提出具有大卷积核的编码-解码架构。 主要贡献: 1. 改进ASPP。将不同孔率的带孔卷积的结果拼接起来(DeepLab v2使用的是求和),并使用了BN。 2. 串行部署ASPP的模块。直接对中间的特征图进行带孔卷积(Dilated Convolutions(2015) 是在最后做)。
深度学习是人工智能的热点发展方向之一,将推动我们步入控制设计和工业物联网的新台阶。机器视觉在工业控制领域极其重要,借助这些技术,使用数据驱动部署复杂的机器和设备
影视后期制作就是对拍摄完的影片或者软件制作的动画,做后期的处理,使其形成完整的影片,包括加特效,加文字,并且为影片制作声音等。 后期软件具体可以分为平面软件、合
当然是中国知网了。
推荐下计算机视觉这个领域,依据学术范标准评价体系得出的近年来最重要的9篇论文吧: (对于英语阅读有困难的同学,访问后可以使用翻译功能) 一、Dee
多媒体图像压缩技术姓名:Vencent Lee摘要:多媒体数据压缩技术是现代网络发展的关键性技术之一。由于图像和声音信号中存在各种各样的冗余,为数据压缩提供了可