❶ 什么是人工智能视觉与图像识别中应用最广泛的
在人工智能视觉与图像识别中,应用旅岩最广泛的技术包括以下几种:
1. 卷积神经网络(Convolutional Neural Networks,CNN):卷积神经网络是一种专门用于处理图像和视觉数据的深度学习算法,具有较高的识别准确率。它通过多层卷积、池化和全连接等层次处理图像,从而实现对图像的特征提取和分类。
2. 目标检测(Object Detection):目标检测是指在图像中自动识别和定位感兴趣的目标物体。常见的目标检测算法包括基于区域的卷积神经网络(Region-based CNN,R-CNN)、快速区域卷积神经网络(Fast R-CNN)、单阶段检测网格(Single Shot MultiBox Detector,SSD)等。
3. 图像分割(Image Segmentation):图像分割是指将图像划分成若干个具有语义意义的子区域。常用的图像分割算法包括基于区域的卷积神经网络(R-CNN)、裂镇衫全卷积神经网络(Fully Convolutional Networks,FCN)等。
4. 人脸识别(Face Recognition):人脸识别是一种基于图像或视频中人脸特肆腔征进行身份认证的技术。常见的人脸识别算法包括卷积神经网络(CNN)、支持向量机(Support Vector Machine,SVM)等。
综上所述,卷积神经网络、目标检测、图像分割和人脸识别是人工智能视觉与图像识别中应用最广泛的技术。这些技术在人脸识别、智能安防、自动驾驶、军事侦察和医学影像分析等方面均有重要应用。
❷ 图像分割算法那么多 如何正确的使用适合的算法
从学术角度讲图像分割主要分成3大类,一是基于边缘的,二是基于区域的,三是基于纹理的。由于基于纹理的也可以看成是基于区域的,所以有些专家也把分割方法分成基于边缘和基于区域两大类。
选择算法的时候主要参考你要分割的图像样本的特点。
如果图像的边界特别分明,比如绿叶和红花,在边界处红绿明显不同,可以精确提取到边界,这时候用基于边缘的方法就可行。但如果是像医学图像一样,轮廓不是特别明显,比如心脏图像,左心房和左心室颜色比较接近,它们之间的隔膜仅仅是颜色比它们深一些,但是色彩上来说很接近,这时候用基于边缘的方法就不合适了,用基于区域的方法更好。再比如带纹理的图像,例如条纹衫,如果用基于边缘的方法很可能就把每一条纹都分割成一个物体,但实际上衣服是一个整体,这时候用基于纹理的方法就能把纹理相同或相似的区域分成一个整体。
不过总体来说,基于区域的方法近些年更热一些,如Meanshift分割方法、测地线活动轮廓模型、JSEG等。
❸ 医疗健康领域人工智能在医学影像方面的应用
人工智能在医学影像方面的应用,是指利用计算机技术和人工智能算法对医学影像进行分析和诊断。这种技术可以帮助医生更准确地诊断疾病,提纳洞高医疗效率和准确性。
总之,人工智能在医学影像方面的应用,可以帮助医生更准确地诊断疾病,提高医疗效率和准确性,为病人提供更好的医疗服务。
❹ 图像分割算法总结
图像处理的很多任务都离不开图像分割。因为图像分割在cv中实在太重要(有用)了,就先把图像分割的常用算法做个总结。
接触机器学习和深度学习时间已经不短了。期间看过各种相关知识但从未总结过。本文过后我会尽可能详细的从工程角度来总结,从传统机器学习算法,传统计算机视觉库算法到深度学习目前常用算法和论文,以及模型在各平台的转化,量化,服务化部署等相关知识总结。
图像分割常用算法大致分为下面几类。由于图像的能量范函,边缘追踪等方法的效果往往只能解决特定问题,效果并不理想,这里不再阐述。当然二值化本身也可以分割一些简单图像的。但是二值化算法较多,我会专门做一个文章来总结。这里不再赘述。
1.基于边缘的图像分割算法:
有利用图像梯度的传统算法算子的sobel,roberts,prewitt,拉普拉斯以及canny等。
这些算法的基本思想都是采用合适的卷积算子,对图像做卷积。从而求出图像对应的梯度图像。(至于为什么通过如图1这样的算子卷积,即可得到图像的梯度图像,请读者复习下卷积和倒数的概念自行推导)由于图像的边缘处往往是图像像素差异较大,梯度较大地方。因此我们通过合适的卷积核得到图像的梯度图像,即得到了图像的边缘图像。至于二阶算子的推导,与一阶类似。优点:传统算子梯度检测,只需要用合适的卷积核做卷积,即可快速得出对应的边缘图像。缺点:图像边缘不一定准确,复杂图像的梯度不仅仅出现在图像边缘,可以能出现在图像内部的色彩和纹理上。
也有基于深度学习方法hed,rcf等。由于这类网络都有同一个比较严重的缺陷,这里只举例hed网络。hed是基于FCN和VGG改进,同时引出6个loss进行优化训练,通过多个层输出不同scale的粒度的边缘,然后通过一个训练权重融合各个层的边缘结果。hed网络结构如下:
可以得到一个比较完整的梯度图像,可参考github的hed实现。优点:图像的梯度细节和边缘完整性,相比传统的边缘算子要好很多。但是hed对于边缘的图像内部的边缘并不能很好的区分。当然我们可以自行更改loss来尝试只拟合外部的图像边缘。但最致命的问题在于,基于vgg的hed的网络表达能力有限,对于图像和背景接近,或者图像和背景部分相融的图片,hed似乎就有点无能为力了。
2.基于区域分割的算法:
区域分割比较常用的如传统的算法结合遗传算法,区域生长算法,区域分裂合并,分水岭算法等。这里传统算法的思路是比较简单易懂的,如果有无法理解的地方,欢迎大家一起讨论学习。这里不再做过多的分析。
基于区域和语意的深度学习分割算法,是目前图像分割成果较多和研究的主要方向。例如FCN系列的全卷积网络,以及经典的医学图像分割常用的unet系列,以及rcnn系列发展下的maskrcnn,以及18年底的PAnet。基于语意的图像分割技术,无疑会成为图像分割技术的主流。
其中,基于深度学习语意的其他相关算法也可以间接或直接的应用到图像分割。如经典的图像matting问题。18年又出现了许多非常优秀的算法和论文。如Deep-Image-Matting,以及效果非常优秀的MIT的 semantic soft segmentation(sss).
基于语意的图像分割效果明显要好于其他的传统算法。我在解决图像分割的问题时,首先尝试用了hed网络。最后的效果并不理想。虽然也参考github,做了hed的一些fine-tune,但是还是上面提到的原因,在我多次尝试后,最终放弃。转而适用FCN系列的网络。但是fcn也无法解决图像和背景相融的问题。图片相融的分割,感觉即需要大的感受野,又需要未相融部分原图像细节,所以单原FCN的网络,很难做出准确的分割。中间还测试过很多其他相关的网络,但都效果不佳。考虑到感受野和原图像细节,尝试了resnet和densenet作为图像特征提取的底层。最终我测试了unet系列的网络:
unet的原始模型如图所示。在自己拍照爬虫等手段采集了将近1000张图片。去掉了图片质量太差的,图片内容太过类似的。爬虫最终收集160多张,自己拍照收集200张图片后,又用ps手动p了边缘图像,采用图像增强变换,大约有300*24张图片。原生unet网络的表现比较一般。在将unet普通的卷积层改为resnet后,网络的表达能力明显提升。在将resnet改为resnet101,此时,即使对于部分相融的图像,也能较好的分割了。但是unet的模型体积已经不能接受。
在最后阶段,看到maskrcnn的实例分割。maskrcnn一路由rcnn,fasterrcnn发展过来。于是用maskrcnn来加入自己的训练数据和label图像进行训练。maskrcnn的结果表现并不令人满意,对于边缘的定位,相比于其他算法,略显粗糙。在产品应用中,明显还不合适。
3.基于图的分割算法
基于深度学习的deepgrab,效果表现并不是十分理想。deepgrab的git作者backbone采用了deeplabv2的网络结构。并没有完全安装原论文来做。
论文原地址参考: https://arxiv.org/pdf/1707.00243.pdf
整体结构类似于encode和decoder。并没有太仔细的研究,因为基于resent101的结构,在模型体积,速度以及deeplab的分割精度上,都不能满足当前的需求。之前大致总结过计算机视觉的相关知识点,既然目前在讨论移动端模型,那后面就分模块总结下移动端模型的应用落地吧。
由于时间实在有限。这里并没有针对每个算法进行详细的讲解。后续我会从基础的机器学习算法开始总结。
❺ 图像分割的相关应用
1. 机器视觉
2. 人脸识别
3. 指纹识别
4. 交通控制系统
5. 在卫星图像中定位物体(道路告判、森胡汪林等)
6. 行人检测
7. 医学影像,包括:
(1)肿瘤和其他病理的定位
(2)组织体积的测量
(3)计算机引导的手术
(4)诊断
(5)治疗方案的定制
(6)解剖学结构的研究
现在已经有了许多各种用途的图像分割算法。对于图像分割问题没有统一袜做改的解决方法,这一技术通常要与相关领域的知识结合起来,这样才能更有效的解决该领域中的图像分割问题。
❻ 医学图像分割及应用
截至目前,我们已经学习了很多关于图像分割的相关算法,就此,对图像的分割算法做以下总结:
基于能量的分割 方法,有一些显着的缺点,如:
水平集算法的提出可以有效解决上述缺点,所谓水平,即指同一高度的一些像素点,将水平集的算法引入到图像分析的领域,水平集算此氏法提出了一个更高的维度来表达这些曲线。
水平集算法对图像的活动轮廓分割有一些新的术语表达:
contour front
contour energy forces
image energy speed function
为了避免3D 轮廓计算的复杂性,提出一个 零水平集(zero level set)的概念,并且提出了一个动态的坐标平面 表达front的演化,如下图所示,我们总能带链总结出当前 时刻的水平面,根据曲面的函数表达,总能总能计算出下一时刻的轮廓演化。与图像能量表达的轮廓不同,水平集算法多了一个平面的维度对轮廓施加影响。
水平集算法通过零水平集的设置和初始轮廓的约束求解偏微分方程的方式实现。
如下图所示,形象地表示了一个水平集算法的原理示意图,在front里面的点小于0,而front外面的点大于0,零水平面所对应的点设为0
不需要移动轮廓,仅仅通过改变图片中的一些值就可以很容易地实现图像地分割。
水平集算法的运算流程如下:
水平集算法的一个重要概念是速度函数(speed function),而对速度函数
有以下三个概念:
front通过迭代实现繁衍,而迭代的过程必有一个停止条件,此条件是由森行散图像本身的性质决定的,gradient函数来表示这一停止条件,如 ,有以下三种常用的函数:
而
水平集算法的扩展可以从两个方向进行:
为了改进水平,提出了一个快速行进算法(Fast Marching)
Fast Marching 算法使得front朝着一个方向前进,要么扩展,要么收缩,避免了分割轮廓的抖动,提高了算法的运行速度,同时,为了避免轮廓的碰撞,每个网路与轮廓点只交叉一次。
在实际的算法应用中,通常将Fast Marching算法和 水平集算法结合来完成图像的分割,用Fast Marching 算法高效的实现轮廓线的行进,完成一个粗分割,当算法趋向于收敛时,用水平集算法完成更为精准的分割。
如下图所示,任意一个时刻点轮廓线网格点交叉的坐标 ,并且在任意高度处,表面会给出在 时刻所到达点的集合。
❼ R-CNN和Mask R-CNN在图像分割中的应用史
姓名:王咫毅
学号:19021211150
【嵌牛导读】机器学习成为现在研究的一大热门,而机器学习所应用到的领域图像处理 目标检测 图像分割都已经日趋成熟,而cnn是如何应用到图像分割里边的呢?而其发展过程又有哪些呢?
【嵌牛鼻子】机器学习 cnn
【嵌牛提问】r-cnn和mask r-cnn有什么区别?两者又是怎么形成的?
【嵌牛正文】
在 Athelas (Athelas 通过深度学习进行血液诊断),我们使用卷积神经网络(CNN)不仅仅是分类!在这篇文章中,我们将看到如何在图像实例分割中使用CNN,效果很好。
自从 Alex Krizhevsky,Geoff Hinton和Ilya Sutskever在2012年赢得ImageNet以来 ,卷积神经网络(CNNs)已经成为图像分类的黄金标准。事实上,从那时起,CNN已经改进到现在他们在ImageNet挑战中胜过人类的程度!
need-to-insert-img
CNN现在在ImageNet挑战中胜过人类。上图中的y轴是ImageNet上的错误率。
虽然这些结果令人印象深刻,但图像分类远比真人类视觉理解的复杂性和多样性简单得多。
need-to-insert-img
分类挑战中使用的图像示例。请注意图像是如何构图良好的,并且只有一个对象。
在分类中,通常有一个图像,其中一个对象作为焦点,任务是说该图像是什么(见上文)。但是,当我们观察周围的世界时,我们会执行更复杂的任务。
need-to-insert-img
现实生活中的景点通常由许多不同的,重叠的物体,背景和动作组成。
我们看到复杂的景点有多个重叠的物体和不同的背景,我们不仅要对这些不同的物体进行分类,还要确定它们之间的界限,差异和关系!
need-to-insert-img
CNN可以帮助我们完成这些复杂的任务吗?也就是说,给定一个更复杂的图像,我们可以使用CNN来识别图像中的不同对象及其边界吗?正如Ross Girshick和他的同龄人在过去几年所表明的那样,答案是肯定的。
这篇文章的目标
通过这篇文章,我们将介绍在对象检测和分割中使用的一些主要技术背后的直觉,并了解它们是如何从一个实现发展到下一个实现的。特别是,我们将介绍R-CNN(地区CNN),这是CNN对此问题的原始应用,以及其后代Fast R-CNN和Faster R-CNN。最后,我们将介绍最近由Facebook Research发布的一篇文章Mask R-CNN,它扩展了这种对象检测技术以提供像素级分割。以下是本文中引用的论文:
R-CNN: https : //arxiv.org/abs/1311.2524
Fast R-CNN: https : //arxiv.org/abs/1504.08083
Faster R-CNN: https : //arxiv.org/abs/1506.01497
Mask R-CNN: https : //arxiv.org/abs/1703.06870
2014年:R-CNN - CNN在物体检测中的早期应用
need-to-insert-img
诸如R-CNN的对象检测算法接收图像并识别图像中主要对象的位置和分类。
受多伦多大学Hinton实验室研究的启发,由Jitendra Malik教授领导的加州大学伯克利分校的一个小团队问自己,今天看来是一个不可避免的问题:
在多大程度上[Krizhevsky等。al的结果]推广到物体检测?
对象检测的任务是在图像中查找不同的对象并对其进行分类(如上图所示)。由Ross Girshick(我们将再次看到的名字),Jeff Donahue和Trevor Darrel组成的团队发现,通过测试PASCAL VOC Challenge,这是一种类似于ImageNet的流行物体检测挑战,Krizhevsky的结果可以解决这个问题。他们写,
本文首次表明,与基于简单HOG类功能的系统相比,CNN可以在PASCAL VOC上实现更高的物体检测性能。
现在让我们花一点时间来了解他们的架构,CNNs区域(R-CNN)是如何工作的。
了解R-CNN
R-CNN的目标是接收图像,并正确识别图像中主要对象(通过边界框)的位置。
输入 :图像
输出 :图像中每个对象的边界框+标签。
但是我们如何找出这些边界框的位置?R-CNN做了我们可能直观地做的事情 - 在图像中 提出 一堆框,看看它们中的任何一个是否实际上对应于一个对象 。
need-to-insert-img
选择性搜索查看多个比例的窗口,并查找共享纹理,颜色或强度的相邻像素
R-CNN使用称为选择性搜索的过程创建这些边界框或区域提议,您可以在 此处 阅读。在较高的层次上,选择性搜索(如上图所示)通过不同大小的窗口查看图像,并且对于每个尺寸,尝试通过纹理,颜色或强度将相邻像素组合在一起以识别对象。
need-to-insert-img
在创建一组区域提议后,R-CNN通过AlexNet的修改版本传递图像,以确定它是否是有效区域。
一旦提出建议,R-CNN将该区域变为标准的方形大小,并将其传递给AlexNet的修改版本(ImageNet 2012的获奖提交,启发了R-CNN),如上所示。
在CNN的最后一层,R-CNN增加了一个支持向量机(SVM),它简单地分类这是否是一个对象,如果是的话,是什么对象。这是上图中的第4步。
改进边界框
现在,在盒子里找到了这个物体,我们可以收紧盒子以适应物体的真实尺寸吗?我们可以,这是R-CNN的最后一步。R-CNN对区域提议运行简单的线性回归,以生成更紧密的边界框坐标以获得最终结果。以下是此回归模型的输入和输出:
输入 :与对象对应的图像的子区域。
输出 :子区域中对象的新边界框坐标。
总而言之,R-CNN只是以下步骤:
1.为边界框生成一组提议。
2.通过预先训练的AlexNet运行边界框中的图像,最后运行SVM,以查看框中图像的对象。
3.通过线性回归模型运行该框,一旦对象被分类,就为框输出更紧密的坐标。
2015年:快速R-CNN - 加速并简化R-CNN
need-to-insert-img
Ross Girshick写了R-CNN和Fast R-CNN。他继续在Facebook Research推动计算机视觉的界限。
R-CNN效果很好,但由于一些简单的原因,它确实很慢:
它需要CNN(AlexNet)的正向传递,用于每个单个图像的每个区域建议(每个图像大约2000个前向传递!)。
它必须分别训练三个不同的模型 - 用于生成图像特征的CNN,用于预测类的分类器,以及用于收紧边界框的回归模型。这使得管道极难训练。
2015年,R-CNN的第一作者Ross Girshick解决了这两个问题,导致了我们短暂历史中的第二个算法 - 快速R-CNN。现在让我们回顾一下它的主要见解。
Fast R-CNN洞察力1:RoI(感兴趣区域)池
对于CNN的前向传递,Girshick意识到对于每个图像,图像的许多建议区域总是重叠,导致我们一次又一次地运行相同的CNN计算(~2000次!)。他的洞察力很简单 - 为什么不在每张图像上运行CNN一次,然后找到一种方法来分享〜2000个提案中的计算?
need-to-insert-img
在RoIPool中,创建图像的完整前向传递,并从所得到的前向传递中提取每个感兴趣区域的conv特征。
这正是Fast R-CNN使用称为RoIPool(感兴趣区域池)的技术所做的事情。在其核心,RoIPool分享CNN的前向传递,以在其子区域中形成图像。在上图中,请注意如何通过从CNN的要素图中选择相应的区域来获取每个区域的CNN要素。然后,汇集每个区域中的要素(通常使用最大池)。所以我们所需要的只是原始图像的一次传递而不是~2000!
快速R-CNN洞察力2:将所有模型组合到一个网络中
need-to-insert-img
快速R-CNN将CNN,分类器和边界框回归器组合成一个单一网络
Fast R-CNN的第二个见解是在单个模型中联合训练CNN,分类器和边界框回归器。之前我们有不同的模型来提取图像特征(CNN),分类(SVM)和收紧边界框(回归量),而 快速R-CNN则使用单个网络来计算所有三个。
您可以在上图中看到这是如何完成的。快速R-CNN用在CNN顶部的softmax层替换SVM分类器以输出分类。它还添加了一个与softmax图层平行的线性回归图层,以输出边界框坐标。这样,所需的所有输出都来自一个网络!以下是此整体模型的输入和输出:
输入 :带有区域提案的图像。
输出 :每个区域的对象分类以及更严格的边界框。
2016年:更快的R-CNN - 加速地区提案
即使有了所有这些进步,快速R-CNN过程仍然存在一个瓶颈 - 区域提议者。正如我们所看到的,检测对象位置的第一步是生成一堆潜在的边界框或感兴趣的区域进行测试。在Fast R-CNN中,这些提议是使用 选择性搜索 创建的,这是一个相当缓慢的过程,被发现是整个过程的瓶颈。
need-to-insert-img
微软研究院的首席研究员孙健带领团队领导更快的R-CNN。
在2015年中期,由Shaoqing Ren,Kaiming He,Ross Girshick和Jian Sun组成的微软研究团队找到了一种方法,通过他们(创造性地)命名为快速R-CNN的架构,使该区域提案步骤几乎免费。
更快的R-CNN的见解是区域建议取决于已经通过CNN的前向传递(分类的第一步)计算的图像的特征。 那么为什么不为区域提案重用那些相同的CNN结果而不是运行单独的选择性搜索算法呢?
need-to-insert-img
在Faster R-CNN中,单个CNN用于区域提议和分类。
实际上,这正是R-CNN团队更快取得的成就。在上图中,您可以看到单个CNN如何用于执行区域提议和分类。这样, 只有一个CNN需要接受培训 ,我们几乎可以免费获得地区建议!作者写道:
我们的观察结果是,基于区域的探测器(如Fast R-CNN)使用的卷积特征图也可用于生成区域提议[从而实现几乎无成本的区域提议]。
以下是其模型的输入和输出:
输入 :图像(注意不需要区域提议)。
输出 :图像中对象的分类和边界框坐标。
如何生成区域
让我们花点时间看看R-CNN如何通过CNN功能更快地生成这些区域提案。Faster R-CNN在CNN的功能之上增加了一个完全卷积网络,创建了所谓的 区域提案网络 。
need-to-insert-img
区域提案网络在CNN的功能上滑动窗口。在每个窗口位置,网络输出每个锚点的分数和边界框(因此4k框坐标,其中k是锚的数量)。
区域提议网络通过在CNN特征映射和每个窗口上传递滑动窗口来工作,输出 k个 潜在的边界框以及每个框预期有多好的分数。这些 k 盒代表什么?
need-to-insert-img
我们知道人们的边界框往往是矩形和垂直的。我们可以通过创建这样的维度锚来利用这种直觉来指导我们的区域提案网络。
直觉上,我们知道图像中的对象应该适合某些常见的宽高比和大小。例如,我们知道我们想要一些类似于人类形状的矩形盒子。同样,我们知道我们不会看到很多非常薄的盒子。以这种方式,我们创建 k 这样的常见宽高比,我们称之为 锚盒 。对于每个这样的锚箱,我们输出一个边界框并在图像中的每个位置得分。
考虑到这些锚框,我们来看看这个区域提案网络的输入和输出:
输入 :CNN功能图。
输出 :每个锚点的边界框。表示该边界框中图像成为对象的可能性的分数。
然后,我们将可能是对象的每个这样的边界框传递到Fast R-CNN,以生成分类和收紧的边界框。
2017:Mask R-CNN - 扩展更快的R-CNN以实现像素级分割
need-to-insert-img
图像实例分割的目标是在像素级别识别场景中不同的对象是什么。
到目前为止,我们已经看到我们如何能够以许多有趣的方式使用CNN功能来有效地定位带有边界框的图像中的不同对象。
我们是否可以扩展这些技术以进一步找到每个对象的精确像素而不仅仅是边界框?这个问题被称为图像分割,是Kaiming He和包括Girshick在内的一组研究人员在Facebook AI上使用一种名为 Mask R-CNN 的架构进行探索的。
need-to-insert-img
Facebook AI的研究员Kaiming He是Mask R-CNN的主要作者,也是Faster R-CNN的合着者。
就像Fast R-CNN和Faster R-CNN一样,Mask R-CNN的潜在直觉也是直截了当的。鉴于Faster R-CNN在物体检测方面的效果非常好,我们是否可以扩展它以进行像素级分割?
need-to-insert-img
在掩码R-CNN中,在快速R-CNN的CNN特征之上添加完全卷积网络(FCN)以生成掩码(分段输出)。注意这与Faster R-CNN的分类和边界框回归网络并行。
Mask R-CNN通过向更快的R-CNN添加分支来完成此操作,该分支输出二进制掩码,该Mask 表示给定像素是否是对象的一部分。与以前一样,分支(上图中的白色)只是基于CNN的特征映射之上的完全卷积网络。以下是其输入和输出:
输入 :CNN功能图。
输出 :矩阵在像素属于对象的所有位置上为1,在其他位置为0(这称为 二进制掩码 )。
但Mask R-CNN的作者不得不进行一次小调整,以使这条管道按预期工作。
RoiAlign - 重新调整RoIPool更准确
need-to-insert-img
而不是RoIPool,图像通过RoIAlign传递,以便RoIPool选择的特征图的区域更精确地对应于原始图像的区域。这是必需的,因为像素级分割需要比边界框更细粒度的对齐。
当在原始的快速R-CNN架构上运行而没有修改时,Mask R-CNN作者意识到由RoIPool选择的特征图的区域与原始图像的区域略微不对准。由于图像分割需要像素级特异性,与边界框不同,这自然会导致不准确。
作者能够通过巧妙地调整RoIPool来解决这个问题,使用一种称为RoIAlign的方法进行更精确的对齐。
need-to-insert-img
我们如何准确地将感兴趣的区域从原始图像映射到特征图?
想象一下,我们有一个大小为 128x128 的图像和一个大小为 25x25 的特征图。让我们想象一下,我们想要的特征区域对应于原始图像中左上角的 15x15 像素(见上文)。我们如何从要素图中选择这些像素?
我们知道原始图像中的每个像素对应于特征图中的~25 / 128像素。要从原始图像中选择15个像素,我们只选择15 * 25 / 128~ = 2.93 像素。
在RoIPool中,我们将它向下舍入并选择2个像素,导致轻微的错位。但是,在RoIAlign中, 我们避免了这种舍入。 相反,我们使用 双线性插值 来准确了解像素2.93处的内容。这在很大程度上是允许我们避免RoIPool引起的错位的原因。
生成这些掩模后,Mask R-CNN将它们与Faster R-CNN中的分类和边界框组合在一起,生成如此精确的分割:
need-to-insert-img
Mask R-CNN能够对图像中的对象进行分段和分类。
期待
在短短3年时间里,我们已经看到研究界如何从Krizhevsky等进步。al的原始结果是R-CNN,最后一直到Mask R-CNN这样强大的结果。孤立地看,像面具R-CNN这样的结果看起来像天才的难以置信的飞跃,是无法接近的。然而,通过这篇文章,我希望你已经看到这些进步如何通过多年的努力和合作实现直观,渐进的改进。R-CNN,Fast R-CNN,Faster R-CNN以及最后的Mask R-CNN提出的每个想法都不一定是量子跳跃,但它们的总和产品已经产生了非常显着的结果,使我们更接近人类水平了解视力。
让我特别兴奋的是,R-CNN和Mask R-CNN之间的时间只有三年!通过持续的资金,关注和支持,未来计算机视觉能够进一步提升?
❽ 求智能算法优化Normalized Cut的图像分割这篇论文
是陕西师范的把?我有,已经给你发了,采纳我啊!