点击上方“3D视觉工坊”,选择“星标”

干货第一时间送达

作者:Karsten Noe

编译:ronghuaiyang

导读

通过使用预训练网络在遥感图像应用中减少对标注数据的需求。

深度学习是一个了不起的方法,用于遥感数据集,如卫星或航空照片的目标检测和分割/匹配。然而,就像深度学习的许多其应用场景一样,获得足够的带标注的训练数据可能会耗费大量的时间。在这篇文章中,我将介绍一些我们的工作,即使用预先训练好的网络来在遥感数据的目标检测任务中避免标注大型训练数据集的大量繁琐工作

2019年9月中旬,我参加了北欧遥感会议。从许多会谈中可以明显看出,深度学习已经进入许多遥感专家的工具箱。观众们对这个话题的兴趣似乎很大,他们讨论了在各种应用中使用深度学习技术的影响和适用性。

讨论的内容之一是使用为一种数据(通常是自然图像)开发和训练的神经网络,并将其应用于其他类型(遥感)数据源中的实践。例如,来自挪威计算中心的Øivind Due Trier展示了一项工作,在一个为计算机视觉应用开发的标准的物体检测网络应用于过滤海拔地图上,为了定位挪威考古遗址。这里,来自听众的反对意见是,使用这个模型没有意义。我强烈反对这一点,尽管神经网络是为自然图像开发的,但在其他数据源上测试它也是有意义的。在这种情况下,演示者可以演示它的工作原理!在我看来,甚至尝试在数据源之间迁移学习也是有意义的 —— 为什么用在另一种数据集上训练的滤波器来初始化网络会比随机初始化更糟糕呢?开发的模型可能太大,容易过拟合,但是使用现有代码库和预训练过的模型进行快速试验的好处往往太大,因此进行试验是很有意义的。

在这篇文章的其余部分,我将展示一些我们在实验室中所做的工作,这些工作是将一个在一个领域(ImageNet自然图像)训练过的网络用于在另一个领域(航拍图像)进行基于图像的搜索。希望我能使你相信这种方法是有意义的。我并不是说ImageNet网络可以得到最好的结果,而是说在考虑可能需要的标注工作量时,使用跨域网络确实有意义。

视觉搜索以及所需的训练数据

深度学习或其他机器学习技术可用于开发识别图像中物体的鲁棒方法。对于来自飞机的航拍图像或高分辨率卫星照片,这将使不同物体类型的匹配、计数或分割成为可能。然而,使用深度学习需要大量的训练数据,除非你已有了可用的用于所需的物体类别的注册数据,而创建这样一个训练数据集是一个非常耗时的过程。

因此,在与哥本哈根市的合作中,我们朝着一种工具迈进了一步,该工具可以用于匹配所需的物体类型,而不需要预先创建训练数据。该工具基于之前的一个项目背后的技术。这个在线演示可以让你点击丹麦航拍图像数据集上的一个地方,并查看丹麦的100个看起来最相似的地方。相似度度量是基于一个训练有素的神经网络来区分不同的物体类型。例如,点击游艇码头或风力涡轮机将会产生以下结果:

基本上,该技术的工作原理是将数据集分割成一堆小片段(在本例中是4800万个片段),每个片段运行一个Resnet-34网络,该网络训练用来区分ImageNet数据集中的1000个不同物体。我们没有使用最终的分类(1000个类中的一个),而是从网络中为每个片段提取一个所谓的描述符,它由2048个数字组成。为了节省内存和减少计算负担,我们训练了一个自动编码器神经网络来压缩2048个数字到512位。在那之后,来自航拍图像数据集的4800万个图像片段可以在不到80毫秒内与一个新的片段相比较!autoencoder是针对这个特定的数据集进行训练的,这意味着它可以以自监督的方式拟合相关的特征。

在一开始,这个解决方案有一些弱点,为了使技术更健壮,我们解决了:

  • 我们改进了旋转不变性,基于从网络输出提取的描述子,对图像片段旋转0, 90, 180和270度。

  • 基于不同尺度的片段计算描述符。这可以找到不同大小的物体。

  • 我们开发了一种“refining”搜索的交互式方法,使得匹配不只是基于单个片段,而是基于多个片段。

从2016年公开的12.5厘米分辨率的丹麦spring航拍图像数据集中,我们在哥本哈根周围的以下区域计算了3种不同比例的8,838,984个片段的描述符:

交互式匹配

交互式匹配目前还处于原型阶段,最好通过一个示例来解释:假设我们想要映射一个区域中航行的所有船只。我们首先选择一个包含一艘船的片段:

基于所存储的描述符,系统计算所选片段与所有其片段出之间的“距离”(相似性)。然后,排序完成,100个最相似的片段显示给用户:

可以看到,这些片段中有一些包含船只,但结果远远不够好。用户现在可以选择一些他满意的片段:

然后,将所选择的所有片段和数据库中所有片段的描述符进行比较,再根据它们的平均相似距离进行排序。这就产生了下面的前100名:

可以看到有显著的改善。我们可以选择再运行一次迭代搜索,通过选择更多的我们满意的片段,并再次运行排序:

船只仍在前100名之列,这是一个好迹象。请注意,我们之前标记为满意的片段不再出现在交互式细分中。

从排序到匹配

迭代方法的结果是对880万个片段进行排序,基于在交互细化过程中选择的片段的平均相似距离。理想情况下,应该有个边界,前N个片段包含船只,剩下的片段是没有的。然而,在实际中,更确切地说,是前M个片段包含船只,之后在片段M和片段N之间有一个间隔,其中一些包含船只,而不是所有都包含船只。在M之后的片段被假设不包含船,以避免误报。我们创建了一个快速而粗糙的用户界面,用户可以在其中检查已排序的片段,并为M和N建立一些有用的值。

如果排序是好的,如果M和N被合理地设置,你现在就有了干净的训练数据,包括包含船只的片段(排序M)和不包含船只的片段(排序N)。这可以用来训练一个分类网络(或者可能的目标检测网络)来识别船只。然而,在我们的例子中,我们选择测试一种更简单的启发式来匹配船:我们在排序中从M之前选择了100个随机的片段(正样本),在N之后选择了100个随机的片段(负样本)。这些片段组成了一个200个样本的比较集。对于M和N之间的每个片段,我们找到与比较集中描述符最相似的两个片段。如果这两个片段都是正样本,片段被接受为一条船,并且片段的轮廓被保存为一个多边形。对于所有正的示例样本(排序rank<M),也创建一个多边形。结果概览如下:

放大后,你可以看到像这样的东西(由于某些原因,包围框少了一条边):

匹配并不完美,但在不到一刻钟的时间内,该技术可以提供情况的概述。与此同时,你也为训练数据集创造了一个很好的起点,可以用来训练神经网络或其他机器学习方法。

匹配树木

用同样的重复的过程来匹配树木树,得到一个像这样的匹配:

放大,看起来是这样:

同样,这个匹配并不完美,但它为进一步的工作提供了一个良好的起点。

我希望这篇文章在如何使用预训练的神经网络的物体定位方面能激发一些灵感,比如从地图中提取训练数据。我很有兴趣了解更多潜在的使用案例,所以如果你曾经需要在大图片(如地图)中寻找特定的物体,请留下评论!

另外,我非常渴望听到你的想法,如何使用自监督的方法来创建一个更好的图像patch的嵌入表示。

本文仅做学术分享,如有侵权,请联系删文。

下载1

在「3D视觉工坊」公众号后台回复:3D视觉即可下载 3D视觉相关资料干货,涉及相机标定、三维重建、立体视觉、SLAM、深度学习、点云后处理、多视图几何等方向。

下载2

在「3D视觉工坊」公众号后台回复:3D视觉github资源汇总即可下载包括结构光、标定源码、缺陷检测源码、深度估计与深度补全源码、点云处理相关源码、立体匹配源码、单目、双目3D检测、基于点云的3D检测、6D姿态估计汇总等。

下载3

在「3D视觉工坊」公众号后台回复:相机标定即可下载独家相机标定学习课件与视频网址;后台回复:立体匹配即可下载独家立体匹配学习课件与视频网址。

重磅!3DCVer-学术论文写作投稿 交流群已成立

扫码添加小助手微信,可申请加入3D视觉工坊-学术论文写作与投稿 微信交流群,旨在交流顶会、顶刊、SCI、EI等写作与投稿事宜。

同时也可申请加入我们的细分方向交流群,目前主要有3D视觉CV&深度学习SLAM三维重建点云后处理自动驾驶、CV入门、三维测量、VR/AR、3D人脸识别、医疗影像、缺陷检测、行人重识别、目标跟踪、视觉产品落地、视觉竞赛、车牌识别、硬件选型、学术交流、求职交流等微信群。

一定要备注:研究方向+学校/公司+昵称,例如:”3D视觉 + 上海交大 + 静静“。请按照格式备注,可快速被通过且邀请进群。原创投稿也请联系。

▲长按加微信群或投稿

▲长按关注公众号

3D视觉从入门到精通知识星球:针对3D视觉领域的知识点汇总、入门进阶学习路线、最新paper分享、疑问解答四个方面进行深耕,更有各类大厂的算法工程人员进行技术指导。与此同时,星球将联合知名企业发布3D视觉相关算法开发岗位以及项目对接信息,打造成集技术与就业为一体的铁杆粉丝聚集区,近2000星球成员为创造更好的AI世界共同进步,知识星球入口:

学习3D视觉核心技术,扫描查看介绍,3天内无条件退款

圈里有高质量教程资料、可答疑解惑、助你高效解决问题

觉得有用,麻烦给个赞和在看~  

深度学习在视觉搜索和匹配中的应用相关推荐

  1. 【深度学习】深度学习在视觉搜索和匹配中的应用

    作者:Karsten Noe   编译:ronghuaiyang 导读 通过使用预训练网络在遥感图像应用中减少对标注数据的需求. 深度学习是一个了不起的方法,用于遥感数据集,如卫星或航空照片的目标检测 ...

  2. 【论文推荐】张笑钦团队 | 综述:基于深度学习的视觉跟踪方法进展

    导读 IJAC特约稿件 人眼可以比较轻松地在一段时间内持续定位特定目标,而在计算机视觉领域,这一任务便是高级计算机任务之一--"目标跟踪".但对计算机而言,在不同场景下实现目标跟踪 ...

  3. 旷视首席科学家孙剑:深度学习变革视觉计算

    https://www.toutiao.com/i6714941914564526596/ 孙剑从视觉智能.计算机摄影学以及AI计算3个方面介绍了计算机视觉研究领域的变革. 作者 | 张栋 AI科技评 ...

  4. 美团-深度学习在点评推荐平台排序中的运用

    团点评作为国内最大的生活服务平台,业务种类涉及食.住.行.玩.乐等领域,致力于让大家吃得更好,活得更好,有数亿用户以及丰富的用户行为.随着业务的飞速发展,美团点评的用户和商户数在快速增长.在这样的背景 ...

  5. 一文探讨可解释深度学习技术在医疗图像诊断中的应用

    2020-10-20 14:39:24 机器之心分析师网络 作者:仵冀颖 编辑:Joni 本文依托于综述性文章,首先回顾了可解释性方法的主要分类以及可解释深度学习在医疗图像诊断领域中应用的主要方法.然 ...

  6. 基于深度学习的视觉里程计算法

    基于深度学习的视觉里程计算法 介绍 近年来,视觉里程计广泛应用于机器人和自动驾驶等领域,传统方法求解视觉里程计需基于特征提取.特征 匹配和相机校准等复杂过程,同时各个模块之间要耦合在一起才能达到较好的 ...

  7. 基于深度学习的视觉目标检测技术综述

    基于深度学习的视觉目标检测技术综述--阅读 曹家乐,李亚利,孙汉卿,谢今,黄凯奇,庞彦伟(天津大学, 天津 300072;清华大学, 北京 100084;重庆大学, 重庆 400044;中国科学院自动 ...

  8. 使用深度学习和树搜索进行从零开始的既快又慢的学习

    本文介绍了来自伦敦大学学院(UCL)Thomas Anthony.Zheng Tian 与 David Barber 的深度学习与树搜索研究.该论文已被 NIPS 2017 大会接收. 二元处理机制理 ...

  9. 【实践】Angel深度学习在广告推荐训练优化中的实践.pdf(附下载链接)

    猜你喜欢 0.[免费下载]2021年11月热门报告盘点&下载1.如何搭建一套个性化推荐系统?2.从零开始搭建创业公司后台技术栈3.全民K歌推荐系统算法.架构及后台实现4.微博推荐算法实践与机器 ...

最新文章

  1. 全领域通吃,12个经典Python数据可视化库盘点
  2. 独家 | 聊天机器人开发中的机器学习(附链接)
  3. xampp python linux,Ubuntu的XAMPP着运行python脚本
  4. 域上的全矩阵环是单环
  5. boost::hana::minimum用法的测试程序
  6. Janus流媒体服务器框架分析
  7. 浅谈SAP Cloud for Sales 自动化
  8. Spring Boot退出代码–创建自定义退出代码
  9. 【渝粤教育】 国家开放大学2020年春季 1171科学与技术 参考试题
  10. VMware文件共享
  11. System Verilog Assertion for debug
  12. python基础之玩转(变量赋值)
  13. AngularJS中service,factory,provider的区别(转载:http://my.oschina.net/tanweijie/blog/295067)...
  14. 零基础学python-如何零基础开始自学Python编程
  15. 问题五十六:怎么用ray tracing画参数方程表示的曲面(3)—— b-spline surface
  16. windows查看GPU使用信息
  17. matlab调用refprop9.0,Matlab调用REFPROP完全说明
  18. 加班不能正常主张加班费的原因解析
  19. OCR:ECCV 2020 论文了解
  20. 全志平台boot框架中增加设备驱动过程分析

热门文章

  1. 为什么需要在TypedArray后调用recycle
  2. Mysql 架构及优化之-定时计划任务
  3. Oracle - 数据库的实例、表空间、用户、表之间关系
  4. 熔断的意义和适用场景,你真的清楚吗?
  5. 如何构建一个好的电商搜索引擎?
  6. 高并发下的秒杀系统架构设计实战!
  7. C语言可以不用,但是不能不会!
  8. 嫌弃俄罗斯的火箭报价太黑!马斯克自己造火箭!SpaceX首次载人发射任务成功!太牛了!...
  9. MyBatis包含这9种设计模式,你知道几个?
  10. 紧急提醒!售价3980,成本价80,你被坑过吗?