做网赌网站得多少钱/电视剧百度风云榜
Authors: Haofei Xu, Juyong Zhang
Link: https://arxiv.org/abs/2004.09548
Years: 2020
Credit
Novelty and Question set up
主流的立体匹配模型的代价聚合操作主要用了3D卷积,这部分操作的算力和内存消耗过大,因此作者提出一种新的模型AANet,旨在摒弃所有3D卷积操作。具体来说,作者提出多分辨率代价体构建,用基于稀疏采样点的尺度内聚合模块解决视差图的edge-fattening问题,用跨尺度聚合模块处理弱纹理问题。
Solutions and Details
-
总体架构
与流行的端到端立体匹配方法一样,AANet同样包含四部分:特征提取、构建代价体、代价聚合和输出视差图。在提取特征部分,会输出multi-scale feature map,分别对应不同stage的特征输出,然后利用这不同尺寸的特征图分别构建各自尺寸的代价体。
作者在这构建的是相关性(correlation)代价体,对第sss个stage的左视图特征FlsF^{s}_{l}Fls和右视图特征FrsF^{s}_{r}Frs,计算视差ddd的相关度,计算方式如下
Cs(d,h,w)=1N⟨Fls(h,w),Frs(h,w−d)⟩C^{s}(d,h,w) = \frac{1}{N}\langle F^{s}_{l}(h,w),F^{s}_{r}(h,w-d)\rangle Cs(d,h,w)=N1⟨Fls(h,w),Frs(h,w−d)⟩
计算出来的代价体是三维的,因为特征通道维度上已通过内积操作进行加和而消除掉了。
随后作者设计尺度内聚合模块(ISA)和跨尺度聚合模块(CSA)对代价体进行代价聚合,并输出对应尺度的视差图。
-
尺度内聚合模块
作者关注到一个常见的问题,在不连续视差中容易出现edge-fattening问题,这个问题本质是常规卷积窗口在边缘时容易聚合了较大视差邻域的代价,因此提出一个自适应的弹性稀疏采样方案,即对特定的视差位置,与它语义上关联度更高的位置进行聚合,整体思路与deformable convolution(v2)一致,所以直接采用他们的实现
C~(d,p)=∑k=1K2wk⋅C(d,p+pk+Δpk)⋅mk\tilde{C}(d,p)=\sum_{k=1}^{K^{2}}{w_k}\cdot{C(d,p+p_{k}+\Delta{p_k})}\cdot{m_k} C~(d,p)=k=1∑K2wk⋅C(d,p+pk+Δpk)⋅mk
与原始deformable convolution稍有不同的是,Δpk\Delta{p_k}Δpk和mkm_kmk是对所有channel共享的,作者的实现是将视差等分成GGG组,每一组使用单独的一套Δpk\Delta{p_k}Δpk和mkm_kmk。
一个ISA模块即由3个conv和一个残差结构组合而成,类似bottleneck的设计,三层分别是1×1,3×3,1×1{1}\times{1},{3}\times{3},{1}\times{1}1×1,3×3,1×1卷积,而其中的3×3{3}\times{3}3×3卷积即是deformable convolution,但与bottleneck不一样的是作者这里三层采用的一样的channel数,没有压缩通道和计算量。
-
跨尺度聚合模块
而立体匹配的另一个问题,弱纹理匹配问题,比较容易在粗颗粒度的代价体中找到纹理信息,因此作者设计了一个跨尺度的聚合模块来解决此类问题。尺度sss的聚合结果可以表示为
C^s=∑k=1Sfk(C~k),s=1,2,...,S\hat{C}^{s}=\sum_{k=1}^{S}{f_k(\tilde{C}^{k})},s=1,2,...,S C^s=k=1∑Sfk(C~k),s=1,2,...,S
这个设计的灵感来源HRNet的跨尺度特征聚合,因此函数fkf_kfk定义为
fk={I,k=s(s−k)convs3×3,stride2,k<supsampling⊕conv1×1,k>s\begin{equation} f_k= \begin{cases} \mathcal{I}& \text{,k=s} \\ (s-k)convs_{3\times{3},stride2}& \text{,k<s} \\upsampling{\oplus}conv_{1\times{1}}& \text{,k>s} \end{cases} \end{equation} fk=⎩⎨⎧I(s−k)convs3×3,stride2upsampling⊕conv1×1,k=s,k<s,k>s
虽然与HRNet结构相似,但设计的初衷和作用是不同的,AANet主要为了聚合不同尺度下代价体蕴含的几何信息,而HRNet是为了学习更丰富的特征。
-
AANet设计和损失函数设计
上述的ISA+CSA模块组成最终的AAModule(Adaptive Aggregation Module),在AANet中,作者采用了6个AAModule进行代价聚合,头3个用了普通2d卷积,后3个才用了deformable convolution。
在特征提取部分,作者采用类似ResNet的结构,将其中6个普通2d替换成deformable convolution。然后利用FPN结构分别提取出1/3x,1/6x,1/12x三个分辨率的特征图。最后利用StereoDRNet提出的refine模块来将1/3x视差图refine到原始输入尺寸。视差图的输出依然是用了softargmin来实现。
KITTI数据集提供的ground truth是稀疏深度,因此作者利用GA-Net的估计视差图作为软标签Dpseudo(⋅)D_{pseudo}(\cdot)Dpseudo(⋅)。对每个分辨率输出的视差图,首先双线性插值到原始尺寸,然后计算损失
Li=∑pV(p)⋅L(Dpredi(p),Dgt(p))+(1−V(p))⋅L(Dpredi(p),Dpseudo(p))L_i =\sum_{p}{V(p)\cdot{\mathcal{L}(D^{i}_{pred}(p),D_{gt}(p))}} + (1-V(p))\cdot{\mathcal{L}(D^{i}_{pred}(p), D_{pseudo}{(p)})} Li=p∑V(p)⋅L(Dpredi(p),Dgt(p))+(1−V(p))⋅L(Dpredi(p),Dpseudo(p))
V(p)V(p)V(p)表示像素位置ppp上是否真实ground truth,L\mathcal{L}L表示smooth L1。整个网络的损失则是各分辨率之间的加权平均数
L=∑iλi⋅LiL = \sum_i{\lambda_{i}}\cdot{L_i} L=i∑λi⋅Li
Results
-
作者在Sceneflow和KITTI-2012/2015数据集上进行验证和对比实验
-
首先对比两个提出的主要聚合模块的作用,可以看出,ISA和CSA都用上效果是最好的
-
可视化证明ISA的自适应能力:在边界处时会选择临近但语义相似位置的特征,而在弱纹理区域,则倾向于搜索范围更广的区域
-
在各个使用3d卷积进行代价聚合的模型上使用AAModule进行替换,精度-速度均衡会变得更好
-
与其他SOTA在Sceneflow上进行比较,精度-速度均衡基本上能达到最佳,AANet*是网络深度更深的改进版本
-
在KITTI-2012/2015上与其他SOTA比较精度,依然能达到较好的水平
Thoughts
- 作者提出的AAModule包含了尺度内和跨尺度聚合模块,针对对应的问题进行特定优化,相对比较直观
- 其中ISA使用了deformable convolution,设计比较巧妙,但在实际落地,尤其是端侧上,deformable convolution可能对硬件不太友好
- 作者使用相关性构建代价体而非特征拼接,因此可以直接使用2d卷积进行代价聚合,在参数量和计算量上都有一定优势,但引入了deformable convolution则一定程度上抵消了这个优势
- CSA模块仿照HRNet的操作设计也很巧妙,但同样会面临计算并行度问题
相关文章:

【立体匹配论文阅读】AANet: Adaptive Aggregation Network for Efficient Stereo Matching
Authors: Haofei Xu, Juyong Zhang Link: https://arxiv.org/abs/2004.09548 Years: 2020 Credit Novelty and Question set up 主流的立体匹配模型的代价聚合操作主要用了3D卷积,这部分操作的算力和内存消耗过大,因此作者提出一种新的模型AANet&#x…...

服务器防入侵攻击,安全加固措施
服务器防入侵攻击,安全加固措施当服务器被入侵,被攻击的时候,很多服务器维护人员不懂得如何去防止入侵,防止黑客的攻击,只能眼巴巴的看着服务器被任意的攻击,给服务器上的网站造成严重的经济损失࿰…...

解读:“出境标准合同”与“出境安全评估”要点与异同
《数据安全法》第四条及《个人信息保护法》第三章对数据出境、个人信息跨境提出明确要求,《数据安全法》与《个人信息保护法》存在互相包含、被包含、衔接、特性、独立性、相互补充等内涵。本文通过上位法互相衔接、关联、特性的思路,去观察《个人信息出…...

python带你成功复刻热门手机游戏——飞翔的小鸟
前言 大家早好、午好、晚好吖 ❤ ~欢迎光临本文章 飞翔的小鸟(游戏英文名:Flappy Bird) 一款由越南独立开发者开发的手机游戏,是之前非常流行的一款手机游戏 小游戏目标:让小鸟穿过管子,不要碰到任何物体…...

YOLOv8初体验:检测、跟踪、模型部署
安装 YOLOv8有两种安装方式,一种是直接用pip命令安装: pip install ultralytics另外一种是通过源码安装: git clone https://github.com/ultralytics/ultralytics cd ultralytics pip install -e .[dev]安装完成后就可以通过yolo命令在命令…...

Vue 监听(watch handler)
普通监听 缺点:不能深度监听(对象属性的改变),刷新或首次加载不能执行。 watch: { carts: function (val, oldVal) { console.log(new: %s, old: %s, val, oldVal) } } 高级监…...

前端代码质量-圈复杂度原理和实践
1. 导读 你们是否也有过下面的想法? 重构一个项目还不如新开发一个项目…这代码是谁写的,我真想… 你们的项目中是否也存在下面的问题? 单个项目也越来越庞大,团队成员代码风格不一致,无法对整体的代码质量做全面的…...

汽车微控制器芯片F280039CPZRQ1、F280039CSPM、F280039CSPN规格参数
F280039CPZRQ1、F280039CSPM、F280039CSPN是C2000实时微控制器系列中的一款器件。C2000微控制器是可扩展、超低延迟器件,旨在提高电力电子设备的效率,包括但不限于:高功率密度、高开关频率,并支持使用 GaN和SiC技术。F280039CPZRQ…...

禾观科技三面经历
智力题 一天中时针和分钟重合多少次 由于时针1分钟旋转的圆心角度数为0.5度(30/60min) 分针1分钟旋转的圆心角度为6度(30/5min) 当两针第一次重合时后到第二次重合,分针比时针多旋转过的圆心角度数为360度。(快的比慢的多跑一圈,也就是360度) 这类问题实际上是分针追时…...

Spring Boot 实现接口幂等性的 4 种方案
一、什么是幂等性 幂等是一个数学与计算机学概念,在数学中某一元运算为幂等时,其作用在任一元素两次后会和其作用一次的结果相同。 在计算机中编程中,一个幂等操作的特点是其任意多次执行所产生的影响均与一次执行的影响相同。幂等函数或幂…...

Android Studio开发APP
1.下载Android Studio 官网下载:Android Studio for Window ... 百度云下载:android-studio-bundle-141.1903250-windows.exe Android Studio 是谷歌推出的一个Android集成开发工具,基于IntelliJ IDEA. 类似 Eclipse ADT,Android Studio 提供了集成的 Android 开发工具用…...

Spring之实例化Bean _ @Resource和@Autowired实现原理(3)
目录 1. 搜集注解信息 applyMergedBeanDefinitionPostProcessor(*) 2. 将实例化的Bean放入3级缓存中 addSingletonFactory(***)为循环依赖做准备 3. 根…...

华为HCIE学习之Openstack Cinder组件(cinder对接glusterfs)
文章目录一、MQ的作用二、cinder架构图三、各组件的作用四、cinder对接glusterfs一、MQ的作用 服务内各组件交互通过MQ进行 二、cinder架构图 IET,Linux用软件做存储,CNA识别过去就是IETTGT,物理存储,CNA识别过去就是TGT 三、…...

关于Go语言的底层,你想知道的都在这里!
文章目录1. GoLang语言1.1 Slice1.2 Map1.3 Channel1.4 Goroutine1.5 GMP调度1.6 垃圾回收机制1.7 其他知识点2. Web框架Gin和微服务框架Micro2.1 Gin框架2.2 Micro框架2.3 Viper2.4 Swagger2.5 Zap2.6 JWT文章字数大约1.95万字,阅读大概需要65分钟,建议…...

每日一问-ChapGPT-20230308-关于技术与思考的问题
文章目录每日一问-ChapGPT系列起因每日一问-ChapGPT-20230308-关于技术与思考的问题matplotlib_venn 中 venn2函数调用时,subsets传入A list (or a tuple) containing two set objects,怎么理解plt.pie() 包含哪些参数,以及每个参数的意义mat…...

Oracle表分区的创建、新增、拆分
Oracle中为了方便管理、查询数据当数据量大于500w或者2G时最好用分区表,常见的一种是使用时间作为分区。 分区表添加新的分区有 2 种情况: (1) 原分区里边界是 maxvalue 或者 default。 这种情况下,我们需要把边界分区 drop 掉,加…...

如何快速升级Java 8 到Java11
老板让我把一个项目从 Java 8 迁移到 Java 11,我该怎么办呢? 最简单的办法,当然是直接强行升级,遇到一个错就改一个错,别看它 low,但是对于一个小型且非核心的项目来说,已经足够了。 当然,对于比较重要的项目,且代码行数不少的情况,最标准的姿势就是对着官方文档进…...

内卷把同事逼成了“扫地僧”,把Git上所有面试题整理成足足24W字Java八股文
互联网大厂更多的是看重学历还是技术?毫无疑问,是技术,技术水平相近的情况下,肯定学历高/好的会优先一点,这点大家肯定都理解。说实话,学弟学妹们找工作难,作为面试官招人也难呀!&am…...

【计组】主存储器有关知识梳理
一、主存储器 主存储器可以直接和CPU进行通信,但是只能保存临时数据,在断电后数据就消失。还有一个特点是,主存储器的容量小,速度快,造价高。 1.构成 2.主存中存储体的构造 最小的存储单位是存储元,存储元…...

QT对象树
对象模型(对象树) 在Qt中创建对象的时候会提供一个Parent对象指针,下面来解释这个parent到底是干什么的。 l QObject是以对象树的形式组织起来的。 n 当你创建一个QObject对象时,会看到QObject的构造函数接收一个QObject指针作…...

什么是B+树
B树是一种树数据结构。B树索引是B树在数据库中的一种实现,是最常见也是数据库中使用最为频繁的一种索引。 先来了解一下什么是索引? 一、索引 数据都是存储在硬盘上的,查询数据不可避免的需要进行IO操作。 索引是一种数据结构,…...

【Unity游戏破解】外挂原理分析
文章目录认识unity打包目录结构游戏逆向流程Unity游戏攻击面可被攻击原因mono的打包建议方案锁血飞天无限金币攻击力翻倍以上统称内存挂透视自瞄压枪瞬移内购破解Unity游戏防御开发时注意数据安全接入第三方反作弊系统外挂检测思路狠人自爆实战查看目录结构用il2cpp dumper例子…...

windows 关闭指定端口进程
1、首先打开cmd 注意要用管理员身份打开cmd,否则可能出现无权访问的提示。 2、输入以下命令(以端口号9098为例) 查看端口信息 netstat -ano | findstr 90983、输入以下命令关闭这个进程 taskkill -PID 39716 -F...

虚拟化系列教程:创建 KVM 虚机的几种方式
虚拟化系列教程:创建虚拟机的几种方式[TOC](虚拟化系列教程:创建虚拟机的几种方式)创建 KVM 虚机的几种方式使用 virt-install 命令创建虚拟机参数说明一般选项安装方法存储配置网络配置其它常用的选项图形配置设备选项虚拟化平台其它创建虚拟机的操作演…...

MacBook安装Golang Oracle数据库驱动程序
Golang连接Oracle 需要安装Oracle Full Client或Instant Client Oracle的Instant Client套件下载地址 #选择Instant Client for macOS (Intel x86)下载包如下: instantclient-basic-macos.x64-19.8.0.0.0dbru.zip instantclient-sdk-macos.x64-19.8.0.0.0dbru.zip instantcli…...

Elasticsearch 核心技术(七):IK 中文分词器的安装、使用、自定义字典
❤️ 博客主页:水滴技术 🚀 支持水滴:点赞👍 收藏⭐ 留言💬 🌸 订阅专栏:大数据核心技术从入门到精通 文章目录一、安装 IK 分词器方式一:自行下载并解压安装包方式二:…...

【LeetCode】剑指 Offer(19)
目录 题目:剑指 Offer 36. 二叉搜索树与双向链表 - 力扣(Leetcode) 题目的接口: 解题思路: 代码: 过啦!!! 写在最后: 题目:剑指 Offer 36. …...

吐血整理,web自动化测试,POM模式搭建自动化测试框架(超级详细)
目录:导读前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结(尾部小惊喜)前言 POM设计模式 主要是…...

【数据库原理复习】索引 视图 sql语句
这里写目录标题视图视图特点视图定义优点索引相关sql三种索引区别解释视图 视图特点 只是虚表,并不实际存放数据,所有数据都来自于基本表建立在一个或几个基本表或视图之上基本表数据变化视图也随之变化只保存视图定义等之类东西 视图定义 # 定义视图…...

【HDFS】IPC重试
1、IPC重试和dfs.client.retry重试的区别2、IPC重试的相关参数汇总及含义3、 IPC重试相关源码、原理简单总结一句话: IPC重试是因为连接问题而进行重试; 客户端重试是因为RPC在服务端处理发生异常,客户端根据指定的策略进行重试。 接下来让我们深入一下源码,因为每一部分源…...