位置: IT常识 - 正文

单目深度估计--深度学习篇(单目深度估计算法)

编辑:rootadmin
单目深度估计--深度学习篇 文章目录一:深度估计应用背景1.深度估计的定义2.深度估计的应用场景3.几种深度估计的方法4.使用深度学习估计的优缺点二:单目深度估计模型1.使用的数据集2.整体网络架构3.分模块解析Ⅰ:层级Ⅱ:ASPPⅢ:特征图减法操作Ⅳ:特征融合Ⅴ:Coarse-to-FineⅥ:权重参数预处理WS与pre_act操作Ⅶ:损失函数一:深度估计应用背景1.深度估计的定义

推荐整理分享单目深度估计--深度学习篇(单目深度估计算法),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:单目深度估计评价指标,单目深度估计算法,单目深度估计网络,单目深度估计综述,单目深度估计网络,单目深度估计综述,单目深度估计网络,单目深度估计原理,内容如对您有帮助,希望把文章链接给更多的朋友!

假设我们有一张2d图片III,我们需要一个函数 FFF 来求取其相对应的深度ddd.这个过程可以写为:

d=F(I)d = F(I)d=F(I)

这里的深度信息ddd其实就代表着由3D物体投射而来的2D图像中每个像素点与相机的实际距离。

但是众所周知, FFF是非常复杂的函数,因为从单张图片中获取具体的深度相当于从二维图像推测出三维空间,即使人眼在两只眼睛来定位自然世界的物体的情况下也依然会有问题存在,更何况使用单张照片了。所以传统的深度估计在单目深度估计上效果并不好,人们更着重于研究立体视觉 (Stereo Vision),即从多张图片中得到深度信息.因为两张图片就可以根据视角的变化得到图片之间disparity的变化,从而达到求取深度的目的。话说多了,先往后看。

2.深度估计的应用场景

除了上面两张图片中提到的应用场景,深度估计还可以运用于3D重建,障碍物检测,SLAM等一系列需要深度信息的下游任务中。因此,可见深度估计往往作为上游任务存在,重要性不言而喻。

3.几种深度估计的方法

利用激光雷达或结构光在物体表面的反射获取深度点云 这种方法可谓是“土豪法”,直接利用传感器扫一扫,便可获得高精度点云深度信息,但是价格昂贵!

传统的双目测距 双目立体视觉,由两个摄像头组成,像人的眼睛能看到三维的物体,获取物体长度、宽度信息,和深度的信息。摄像头的位置是一般手动标定(比如张正友相机标定算法),然后通过目标点在图像坐标系和世界坐标系中的位置来推导相机内外参数矩阵的过程,往往是一个坐标转换的过程。

传统的单目测距 单目视觉是能获取二维的物体信息,即长度、宽度,所以如果想要测距,需要拍摄出几张不同角度(时序)的图像,再通过Mobileye单目测距等一系列方法,进行求解。同时,计算量复杂,而且精度不如双目高,往往是在条件艰难的时候使用。

4.使用深度学习估计的优缺点

前面铺垫完了几种传统领域的几种常见方法,现在开始聊聊今天的主角–深度学习单目估计。顾名思义,深度学习深度学习,第一反应End2End,把图像往训练好的网络里一扔,不需要任何人工参与,直接得出最后的深度图,一个词,方便!同时,我们只需要单目相机,一个词,成本低!

那有什么缺点呢,首先是80m以内的深度估计精度还行,但是再远误差就很大了,可见精度低、估计距离局限性,都是它的缺点。当然,还有一个深度学习一直绕不走的问题,需要大量训练集,在一些缺少训练数据的环境里显然是不容忽视的问题。

单目深度估计--深度学习篇(单目深度估计算法)

但是毕竟和时代前沿技术搭边了,咱们就来好好唠一唠,下面进入正题。

二:单目深度估计模型1.使用的数据集

这里讲解的深度估计模型,使用的是KITTI数据集,取景于城市、乡村的道路上,该数据集在多个研究领域内被广泛使用,具体见下图:

2.整体网络架构

深度估计模型是输入一张图像,输出一张包含深度信息的图片,所以是一种生成模型,那么必然离不开编码和解码这个核心过程了,见下图: 当然,真正的网络架构没有这么简单,但都是围绕编码-解码进行的,下面展示CVPR最近发布的一种网络架构,我将逐模块地讲解这个“庞然大物”:

3.分模块解析Ⅰ:层级

其实就是经过几层池化后,每次缩一半,这里的backbone使用的是Resnet101。和U-net等网络的操作相似,主要是为了后面的操作,如图:

Ⅱ:ASPP

作者在backbone的最后一个特征图做了ASPP,这里什么是ASPP不再赘述了,就是空洞卷积和SPP的结合,之所以用ASPP目的就是加点特征多样性,同时保留一定的分辨率(也是图像分割领域常规操作)。如图所示:

Ⅲ:特征图减法操作

在深度估计研究领域,物体的轮廓深度信息是一个挑战,作者为了有效解决这个问题,进行了神操作,将两张特征图A−BA-BA−B相减(特征图B是上采样后和A一样尺寸的特征图),提取出了差异特征,得到轮廓特征图L。如下图:

Ⅳ:特征融合

进行一顿叠加,首先充分利用高层特征图与本层特征图的融合,得到中间特征图X,来增加特征的多尺度性。接着拼接高层的预测结果R‘’和本层的轮廓图L,大杂烩乱炖后得到本层预测结果R。每层都是这样操作,如图所示:

Ⅴ:Coarse-to-Fine

最后是细节“雕琢”的阶段,对每一层的R进行融合,得到最后的预测结果R‘’‘,如图所示:

Ⅵ:权重参数预处理WS与pre_act操作

在真个网络中还加入了一些细节,首先是加入了权重标准化WS操作,让权重参数分布更均匀一些,不然经过ReLU后大量权重会被杀死(笔者提出疑问,那这样为什么不换一下激励函数,比如Mish,Leaky ReLU,Swish啥的??),接着还加入了pre_act,就是先对x进行ReLU,然后再进入卷积层,比较佛系,对于他们的实验,确实准确度有了质的飞跃,如下图所示:

Ⅶ:损失函数

化简后的损失函数中的 ddd 其实就是每个像素点预测深度和真实深度的差值,重点是后面的didjdi djdidj求和是什么意思,前面为什么还加了个负号。举个例子,大家就理解了,找出两个像素点,预测值和真实值的差值分别是d1d1d1和d2d2d2,如果两个差值都是负数,那么相乘是个正值,前面加个负号,那么代表不被惩罚,相反的如果两者异号则被惩罚。可见损失函数中这一项的目的是,希望得到的预测值要么都是低了一点,要么都高了一点,而不是这里预测大了,那里预测小了,这样效果其实更糟糕,模型更不可靠。

  至此我对利用深度学习进行单目深度估计的原理,进行了简单讲解,希望对大家有所帮助,有不懂的地方或者建议,欢迎大家在下方留言评论。

我是努力在CV泥潭中摸爬滚打的江南咸鱼,我们一起努力,不留遗憾!

本文链接地址:https://www.jiuchutong.com/zhishi/298405.html 转载请保留说明!

上一篇:vue3 中使用百度地图(vue3使用教程)

下一篇:opencv调用yolov7 yolov7 c++ yolov7转onnx opencv调用yolov7 onnx(opencv调用yolov8)

  • 微信怎么发大于100m的视频(微信怎么发大于200兆的文件)

    微信怎么发大于100m的视频(微信怎么发大于200兆的文件)

  • qq备份软件叫什么(qq备份工具)

    qq备份软件叫什么(qq备份工具)

  • 趣呗怎么定位对方(趣呗定位对方知道吗)

    趣呗怎么定位对方(趣呗定位对方知道吗)

  • 打开volte是什么意思(打开volte开关)

    打开volte是什么意思(打开volte开关)

  • soul群聊功能没了(soul群聊没有声音)

    soul群聊功能没了(soul群聊没有声音)

  • 抖音号正确为什么搜不到人(抖音号不行是什么意思)

    抖音号正确为什么搜不到人(抖音号不行是什么意思)

  • wlan常见的拓扑结构有哪些(wlan的网络拓扑)

    wlan常见的拓扑结构有哪些(wlan的网络拓扑)

  • 机顶盒不亮灯怎么回事(机顶盒的灯不亮)

    机顶盒不亮灯怎么回事(机顶盒的灯不亮)

  • 华为云同步怎么关闭(华为云同步怎么删除图片)

    华为云同步怎么关闭(华为云同步怎么删除图片)

  • 拍合影用多大光圈(拍合影用多大光圈比较好)

    拍合影用多大光圈(拍合影用多大光圈比较好)

  • iPhone11pro有没有指纹解锁(iPhone11pro有没有128G的)

    iPhone11pro有没有指纹解锁(iPhone11pro有没有128G的)

  • iphonexr有指纹解锁吗(iphonexr指纹解锁吗)

    iphonexr有指纹解锁吗(iphonexr指纹解锁吗)

  • oppo显示hd怎么关闭(oppo手机显示hd怎样关掉)

    oppo显示hd怎么关闭(oppo手机显示hd怎样关掉)

  • 淘宝号如何解除身份证绑定(淘宝号如何解除银行卡绑定)

    淘宝号如何解除身份证绑定(淘宝号如何解除银行卡绑定)

  • iphone8可以菜单横屏吗(苹果8怎么设置下拉菜单)

    iphone8可以菜单横屏吗(苹果8怎么设置下拉菜单)

  • 数字计算机模拟计算机分类依据(数字计算机模拟计算机)

    数字计算机模拟计算机分类依据(数字计算机模拟计算机)

  • 小米手环4nfc怎么使用(小米手环4nfc怎么连接手机)

    小米手环4nfc怎么使用(小米手环4nfc怎么连接手机)

  • win7系统偏好设置在哪(系统偏好设置任何来源不见了)

    win7系统偏好设置在哪(系统偏好设置任何来源不见了)

  • m5电脑模式在哪里设置(m5怎么切换到电脑模式)

    m5电脑模式在哪里设置(m5怎么切换到电脑模式)

  • qq衣领图标是什么(qq领带图标是什么意思)

    qq衣领图标是什么(qq领带图标是什么意思)

  • 快手能隐藏评论吗(快手隐藏评论怎么显示出来)

    快手能隐藏评论吗(快手隐藏评论怎么显示出来)

  • wd蓝盘和绿盘的区别(wd 蓝盘)

    wd蓝盘和绿盘的区别(wd 蓝盘)

  • 苹果就寝怎么彻底删除(苹果就寝怎么彻底删除而不是关闭)

    苹果就寝怎么彻底删除(苹果就寝怎么彻底删除而不是关闭)

  • Win11提示“为了对电脑进行保护,已经阻止此应用”解决方法(ie11已经为了帮助保护您的计算机而关闭此网页)

    Win11提示“为了对电脑进行保护,已经阻止此应用”解决方法(ie11已经为了帮助保护您的计算机而关闭此网页)

  • 劳务发票要交多少税费
  • 银行的划分标准
  • 一般纳税人条件要求2020
  • 合并报表营业收入怎么算出来的
  • 设备配件定义
  • 买入返售金融资产什么意思
  • 土地使用税怎么征收标准
  • 停工损耗会计分录怎么写
  • 分公司收到的总部拨款会计如何处理
  • 耕地占用税为什么属于房地产开发成本
  • 原材料的实际成本是什么
  • 营业外收入交税会计分录
  • 增值税专用发票开错了咋办
  • 一般纳税人增值税优惠政策
  • 港口建设费2021年归国家税务总局
  • 加速折旧法主要包括哪些内容
  • 个体工商户怎么办对公账户
  • 1697510472
  • win10点击添加账户没反应
  • 增值税税控系统折旧
  • 代开专票缴纳的增值税怎么做账?
  • 应付债券包括
  • php常用的设计模式在开发中的实例
  • 营改增后房地产企业账务处理
  • 企业应纳所得税计算公式
  • php比较两个字符串
  • 什么是包装物押运
  • 存货跌价准备减少
  • 其他应收和其他应付可以共用吗
  • echarts高德地图自定义区域
  • 年终奖并入综合所得
  • 小程序uniapp怎么用
  • 可视化大屏技术
  • gp_dump命令
  • mysql函数nvl
  • 医院会计医保怎么做账
  • 固定资产清理产生的费用入什么科目
  • 资产捐赠账务处理
  • 汽车维修费可以做差旅费吗
  • 电汇汇款方式的基本流程
  • 企业间借款利息收入
  • SQLServer 2008 CDC功能实现数据变更捕获脚本
  • 设计公司成本核算分录
  • 收到货款发货了没开发票怎么入账
  • 合作社收到政府补贴会计分录
  • 合同结算属于资产吗
  • 待抵扣进项税在贷方怎么冲掉
  • 小规模纳税人缴纳增值税怎么做账
  • 电影院租金
  • 企业现金购货限额
  • 利润表主营业务收入怎么算
  • 检测费用开票税率
  • 公司车辆保养计入什么费用
  • 预收冲应收怎么做账
  • 错过报税期
  • 企业被收购的账务处理
  • sql server创建架构
  • sql server错误和使用情况报告
  • win10右键菜单自定义
  • windows的fn键
  • 360win7
  • Yosemite使用技巧 如何使用Yosemite mac信息功能共享电脑屏幕教程
  • linux中find命令基本使用方法
  • centos 添加服务
  • win7如何录制电脑屏幕
  • windows7文件操作步骤
  • Windows8 PrintScreen屏幕截图如何保存到桌面上
  • win7删除文件
  • javascript事件模型介绍
  • javascript中的闭包
  • javascript基于
  • koa nodejs
  • javascriptz
  • js类继承的几种方式
  • 怎么用jquery
  • 大征期和小征期的区别
  • 打印缴纳社保电子缴税凭证
  • 种子公司缴税吗多少钱
  • 个人所得税超过12万能退税吗
  • 个人转让住宅需要缴纳什么税
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设