图像融合

Faster R-CNN、SSD和YOLO

╄→гoц情女王★ 提交于 2019-11-29 06:31:10
最近做一些关于Faster R-CNN、SSD和YOLO模型选择和优化的项目,之前只了解Faster R-CNN系列目标检测方法,于是抽空梳理一下这几个检测模型。先上两张简单的精确度和运算量的对比图,有个粗略的了解,虽然图中缺了YOLO,参考价值仍然很大: 下面开始分别详述吧~ Faster R-CNN架构 传统目标检测方法大致分为如下三步: 深度学习特别是CNN的出现使得上述第二三步可以合并在一起做。Faster R-CNN步骤: (1)由输入图片产生的区域候选 (2)最后一层卷积输出的所有通道 (2)最后一层卷积输出的所有通道 pooling=> + (3)ROI pooling 候选区的产生 RPN的核心思想是使用卷积神经网络直接产生region proposal,使用的方法本质上就是滑动窗口。RPN的设计比较巧妙,RPN只需在最后的卷积层上滑动一遍,因为anchor机制和边框回归可以得到多尺度、多长宽比的region proposal,3*3滑窗对应的每个特征区域同时预测输入图像3种尺度(128,256,512),3种长宽比(1:1,1:2,2:1)的region proposal,这种映射的机制称为anchor: RPN 利用基网络对图像用一系列的卷积和池化操作进行特征提取,得到原始的feature maps(灰色区域),然后在原始的feature

Paper Reading:RCNN-SPP-Fast RCNN-Faster RCNN

一笑奈何 提交于 2019-11-29 00:54:11
本文对基于RCNN框架的几个模型进行介绍和总结。 [目标检测][base64str0] RCNN 论文:Rich feature hierarchies for accurate object detection and semantic segmentation 发表时间:2014 发表作者:(加州大学伯克利分校)Ross Girshick 发表刊物/会议:CVPR 本文具有很多比较重要的意义。 1、在 Pascal VOC 2012 的数据集上,能够将目标检测的验证指标 mAP 提升到 53.3%,这相对于之前最好的结果提升了整整 30%. 2、这篇论文证明了可以讲神经网络应用在自底向上的候选区域,这样就可以进行目标分类和目标定位。 3、这篇论文也带来了一个观点,那就是当你缺乏大量的标注数据时,比较好的可行的手段是,进行神经网络的迁移学习,采用在其他大型数据集训练过后的神经网络,然后在小规模特定的数据集中进行 fine-tune 微调。 候选区域与 CNN 结合 R-CNN利用候选区域与 CNN 结合做目标定位。其中借鉴了滑动窗口思想,R-CNN 采用对区域进行识别的方案。具体是: 给定一张输入图片,从图片中提取 2000 个类别独立的候选区域。 对于每个区域利用 CNN 抽取一个固定长度的特征向量。 再对每个区域利用 SVM 进行目标分类。 [R-CNN1]

123

大城市里の小女人 提交于 2019-11-28 22:15:25
主要语义分割网络调研 介绍 图像的语义分割是将输入图像中的每个像素分配一个语义类别,以得到像素化的密集分类。虽然自 2007 年以来,语义分割/场景解析一直是计算机视觉社区的一部分,但与计算机视觉中的其他领域很相似,自 2014 年 Long等人 首次使用全卷积神经网络对自然图像进行端到端分割,语义分割才产生了大的突破。 网络架构 一般的语义分割架构可以被认为是一个 编码器-解码器 网络。 编码器 通常是一个预训练的分类网络,像 VGG、ResNet,然后是一个 解码器 网络。这些架构不同的地方主要在于 解码器 网络。 解码器 的任务是将 编码器 学习到的可判别特征(较低分辨率)从语义上投影到像素空间(较高分辨率),以获得密集分类。 不同于分类任务中网络的最终结果(对图像分类的概率)是唯一重要的事,语义分割不仅需要在像素级有判别能力,还需要有能将编码器在不同阶段学到的可判别特征投影到像素空间的机制。不同的架构采用不同的机制(跳跃连接、金字塔池化等)作为解码机制的一部分。 Fully Convolution Networks (FCNs) 全卷积网络 Fully Convolutional Networks for Semantic Segmentation(2015) 作者将当前分类网络(AlexNet, VGG net 和 GoogLeNet)修改为全卷积网络

[译]Multi-View Stereo: A Tutorial(3)

孤者浪人 提交于 2019-11-28 16:34:47
chapter 3 基于图像一致性的三维重建 基于第二章的图像一致性算法,本章将会详细介绍最近几年流行的多视角立体几何算法。区分MVS算法有许多因素,例如图像一致性函数,场景表达,可视化计算和初始化条件。因此提出一个单独的分类并不容易。本文将会依据输出的场景表示方法作为主要分类方式。因为它决定了应用的场景,有兴趣的读者可以参考[165]查看mvs算法的分类方法。 Fig3.1 表示4种常用的表示方法:深度图、点云、体素场、mesh面片,本章将会介绍每种重建算法的state-of-the-art 方法。点云重建方法的渲染方式是采用基于点的渲染技术[160,83],展示了一个完整的纹理渲染模型,但是点云模型仅仅是独立的带颜色的3D点;体素场常用于计算机视觉和计算机图形学表示3D平面,常将体素场当成距离一个平面的带符号的距离函数,该平面是函数场的零势面。 Fig3.2表示MVS算法的重建步骤和中间或者最终几何形态类型,许多MVS算法集中于单个重建步骤,然而有些将多个步骤组合成操作管线,本表表达了大多数MVS算法/系统,除了一种算法-直接通过图像一致性体素构建mesh,通过体素融合方法[190,102],在这个方法中,图像一致性体素替换了点云图或者深度图。 当然有许多过去开发的算法再这里没有列举出来,例如level-set方法,level-set曾经在MVS算法中非常流行

[译]Multi-View Stereo: A Tutorial(1)

对着背影说爱祢 提交于 2019-11-28 16:34:18
摘要: 该教程是MVS领域专注于实用算法的实践手册,MVS算法只依赖于图像,基于一些合理的假设(比如?)重建出真实精确的3d模型. 最重要的是场景固定.该教程将mvs问题转化成图像/几何约束优化问题.详细来说主要在两方面: 1.鲁棒实现图像一致性检测;2.有效的优化算法. 主要讲了这两因素在应用程序和工业中如何应用.本教程还描述了高级方法涉及到领域专业知识如:结构优化,以及接下来的挑战和未来的研究方向. 1简介 1.1 图像获取 有序无序 1.2 相机投影模型 如简介所述,为了使重建效果更好,MVS算法需要额外的信息,尤其是每个图片对应的相机模型-它描述了如何将3D点投影到对应的2D空间,MVS算法常采用针孔相机模型,它的相机投影矩阵是3X4的矩阵[88],按比例定义的.这是通常用于拍摄静态照片的现成数码相机的模型。任何一个3X4的矩阵都可以分解成3x3的上三角矩阵K和3X4姿态矩阵的乘积[R|T]. K --- 相机内参矩阵 (fx, fy): 垂直/水平焦距 (cx, cy): 主点 s : 扭曲畸变 [R|T] --- 外参矩阵 R : 旋转参数 T : 平移参数 矩阵K是相机的内参矩阵,它是由相机的内参组成,垂直、水平焦点(光心)长度(f x , f y ),主点(c x , c y ),畸变参数s。[R|T]矩阵为外参矩阵,R是相机的旋转矩阵,T是相机的平移矩阵

PIL:处理图像的好模块

元气小坏坏 提交于 2019-11-28 07:13:44
介绍 PIL是一个专门用来处理图像的模块,可以对图象进行各种各样的变换 打开一张图片 python from PIL import Image # 调用Image下的open方法,即可打开一张图片 # 得到的im便是图片的字节流 # 我们便可以对im进行操作 im = Image.open("古明地觉.jpg") 查看图片的相关信息 显示图片 python im.show() 获取图片的信息 python print(im.format) # JPEG 获取大小 python print(im.size) # (960, 626) """ 关于图片的大小,我要说两句 首先图片的结构是一个三维数组,第一维表示行,第二维表示列,第三位表示rgb或者灰度值 我们平常说一张图片是1920*1080,指的是这张图片每一行有1920个像素,每一列有1080个像素,想成一个长方形的话,就是长为1920,宽为1980 每一个像素点,是一个rgb或者灰度值,所有的像素组合,成为一张图片 1920 * 1080相当于是有1080行,1920列 一般我们对数组进行操作时,比如numpy,通过指定在哪一行、以及哪一列来获取对应的元素。都是先确定行,然后再确定列 比如对于这样一张1920*1080的图片,假设转为了一个numpy里面的数组。我如果要获取图片最右下角的那一个点的像素值的话,我要怎么获取呢?

CNN原理

萝らか妹 提交于 2019-11-28 01:07:34
卷积神经网络(Convolutional Neural Network)的结构类似于神经网络,可以看做是对其的改进。它利用 局部连接 、 权值共享 、 多核卷积 、 池化 四个手段大大降低了参数的数目,使得网络的层数可以变得更深,并且能够合理的隐式的提取特征。CNN主要用来识别位移、缩放及其他形式扭曲不变性的二维图形。由于其特征检测层通过训练数据进行学习,隐式地从训练数据中进行学习, 避免了显式的特征抽取 ;再者由于同一特征映射面上的神经元权值相同,所以 网络可以并行学习 ,这也是卷积网络相对于神经元彼此相连网络的一大优势。卷积神经网络以其局部权值共享的特殊结构在语音识别和图像处理方面有着独特的优越性,其布局更接近于实际的生物神经网络,权值共享降低了网络的复杂性,特别是 多维输入向量的图像 可以直接输入网络 这一特点避免了特征提取和分类过程中数据重建的复杂度它可以直接处理灰度图片,能够直接用于处理基于图像的分类。 卷积神经网络是一种带有卷积结构的深度神经网络,卷积结构可以减少深层网络占用的内存量。卷积神经网络的结构组成如下图: 其中包含有: 输入层、 卷积层 (Convolutional Layer)、 激励层 (ReLU layer) 池化层 (下采样层Pooling Layer)、 全连接层 (Fully Connected Network) 输出层 卷积神经网络层、池化层

zz图像、神经网络优化利器:了解Halide

风流意气都作罢 提交于 2019-11-28 00:52:44
动图示例实在太好 图像、神经网络优化利器:了解Halide Oldpan 2019年4月17日 0条评论 1,327次阅读 3人点赞 前言 Halide是用C++作为宿主语言的一个图像处理相关的DSL(Domain Specified Language)语言,全称领域专用语言。主要的作用为在软硬层面上(与算法本身的设计无关)实现对算法的底层加速,我们有必要对其有一定的了解。因为不论是传统的图像处理方法亦或是深度学习应用都使用到了halide的思想。 其中,在OpenCV(传统图像处理库)中部分算法使用了Halide后端,而TVM(神经网络编译器)也是用了Halide的思想去优化神经网络算子。 那么Halide到底是干嘛用的,看上面那张图,同样的一个算法处理(局部拉普拉斯变换),使用直接的C++语言写出来算法速度很慢,Adobe公司使用3个月对这个算法进行了优化(手工优化)使这个算法的速度快了10倍,但是如果你使用了Halide,只需要几行代码,就可以使这个算法比之前普通直接的算法快上20倍。 一句话来说,Halide大大节省了我们手动优化底层算法的时间,让我们只需要关心算法的设计。 Halide为什么可以优化算法 Halide的特点是其图像算法的计算的实现(Function和Expression)和这些计算在计算硬件单元上的调度(Schedule)是分离的

Video Restoration with Enhanced Deformable Convolutional Networks论文翻译(具有增强的可变形卷积网络的视频恢复)

亡梦爱人 提交于 2019-11-27 07:39:36
摘要 视频恢复任务,包括超分辨率,去模糊等,正在计算机视觉社区中引起越来越多的关注。在NTIRE19挑战赛中发布了名为REDS的具有挑战性的基准。这个新的基准测试从两个方面挑战现有方法:(1)如何在给定大运动的情况下对齐多个帧,(2)如何有效地融合具有不同运动和模糊的不同帧。在这项工作中,我们提出了一种新的视频恢复框架,其具有增强的可变形卷积,称为EDVR,以应对这些挑战。首先,为了处理大运动,我们设计了金字塔,级联和可变形(PCD)对准模块,其中使用可变形卷积以粗到细的方式在特征级别完成帧对齐。 其次,我们提出了时间和空间注意(TSA)融合模块,其中在时间和空间上都应用注意力,以便强调后续恢复的重要特征。 得益于这些模块,我们的EDVR赢得了冠军,并且在NTIRE19视频恢复和增强挑战的所有四个轨道中都大幅超越了第二名。 EDVR还展示了最先进的视频超分辨率和去模糊方法的卓越性能。代码可在https://github.com/xinntao/EDVR找到。 1.介绍 在本文中,我们描述了我们在NTIRE 2019视频恢复和增强挑战中的成功解决方案。 该挑战为上述任务发布了一个有价值的基准,称为REalistic和Diverse Scenes数据集(REDS)。相比下,对于现有数据集,REDS中的视频包含更大且更复杂的内容动作,使其更具现实性和挑战性

论文阅读:Face Recognition: From Traditional to Deep Learning Methods 《人脸识别综述:从传统方法到深度学习》

让人想犯罪 __ 提交于 2019-11-26 19:17:50
论文阅读: Face Recognition: From Traditional to Deep Learning Methods 《人脸识别综述:从传统方法到深度学习》 一、引言 1.探索人脸关于姿势、年龄、遮挡、光照、表情的不变性,通过特征工程人工构造feature,结合PCA、LDA、支持向量机等机器学习算法。 2.流程 人脸检测,返回人脸的bounding box 人脸对齐,用2d或3d的参考点,去对标人脸 人脸表达,embed 人脸匹配,匹配分数 二、人脸识别发展综述 1.几何特征 最早:边缘提取算子和连通域算子提取特征器官 发展:梯度图像 普氏距离分析 基于几何理论的方法在3d识别中有一定应用 [20][21] 2.整体方法 PCA [22-24] PCA的概率版变体,利用贝叶斯分析 [25]。使用两组特征脸来描述相同人和不同人之间variation PAC其他变体 kernel PCA 独立成分分析 ICA 其他见文章 PCA方法总的来说是基于整体脸,而不是局部部件,来判断输入图像是否是人脸。 PCA方法的问题在于,其投影将训练集中所有图片的variance最大化了,也就是说,最大的特征向量并不利于人脸识别,这是因为,提取到的eigenvector很有可能同一个体的variation(光照,姿势,表情带来的) LDA,即Fisher discriminant