​什么是目标检测中的旋转敏感度错误?

极市平台

共 2842字,需浏览 6分钟

 · 2021-10-17

↑ 点击蓝字 关注极市平台

作者 | 爱做菜的炼丹师 
来源 | CV研习社
编辑 | 极市平台

极市导读

 

本文讲述旋转框回归引起的旋转敏感度误差,以及如何解决该问题>>加入极市CV技术交流群,走在计算机视觉的最前沿

旋转框的目标检测任务通常出现在遥感数据,文本数据,以及点云鸟瞰图数据中。对旋转框的表达会采用中心点和长宽再加上旋转角,然后设计损失函数求学习误差。本文对旋转框回归引起的旋转敏感度误差展开,并讨论如何解决该问题。

目录

  • 前沿
  • 核心思想
  • 问题描述
  • 解决方法
  • 思考展望

前沿

目标检测任务根据方向,通常可分为水平框检测和旋转框检测。水平框检测通常适合于一般的自然场景图像。旋转框检测通常出现在场景文本、遥感地图、车牌检测、点云鸟瞰图中,通常需要更精确的定位,并需要有效的旋转检测器。

目标检测中如何表示一个旋转框?

通常对一个旋转框我们有两种表达形式:一种是基于五个参数,分别为中心点(x, y)、宽高(w, h)、旋转角度a,如下图所示:

另一种是基于八个参数,分别是旋转框的四个顶点(x1, y1),(x2, y2),(x3, y3),(x4, y4),如下图所示:

对于基于区域的旋转物体检测器,通常使用“l1-损失”作为损失函数。

核心思想

本文认为由于角度固有的周期性以及相关的宽度和高度的突然变化导致的损失不连续性,上述积分会导致训练不稳定和性能退化。考虑到五个具有不同测量单位的参数之间不一致的回归性,这个问题更加突出。

针对上述问题,本文提出调制旋转损耗来消除损耗不连续性。新的损耗与八参数回归相结合,进一步解决了参数回归不一致的问题。

什么是旋转敏感度误差?

  1. 角度损失不连续:当角度数值达到其范围边界时,角度损失就会出现跳变;

  2. 回归参数的不统一:中心点坐标,宽高以及角度的单位不同,并且与IoU存在不同的关系;

以上两个问题会导致训练不稳定以及最终检测性能的下降。

如何解决上述两个问题?

针对损失函数中出现的不连续的问题,本文在原有的基础上增加校正损失,对突变位置的L1-损失进行对称。

针对回归参数不一致的问题,本文对五参数旋转框的表示修改为八参数旋转框表示法。基于八参数回归的检测直接对旋转框的四个点回归,因此预测是四边形的。

四边形回归的关键步骤是预先对四个角点进行排序,使姿态预测正确,也可以避免非常大的损失。对于顶点顺序,本文采用基于叉积的算法来获得四个顶点的序列。

问题描述

什么是角度参数引起的损耗不连续?

当角度达到其范围边界时,损失值将会跳跃,如图,将水平矩形分别顺时针和逆时针旋转1度,得到地面真值框和检测框。参考矩形的位置只是略有变化,但它的角度变化很大,高度和

蓝色、红色和绿色的矩形分别代表参考框、真实框和预测框。上述三个框用五个参数来描述:参考框(0,0,10,25,-90°)、真实框(0,0,25,10,-1°)和预测框(0,0,10,25,-89°)。网络预测的偏移量为(0 , 0 , 0 , 0 , 1 ° ) ,将参考框转为预测框。网络训练的目标是(0 , 0 , 15 , − 15 , 89 ° ),目标与网络预测的偏移量很多,所以损失会很大。这就是角度的周期性导致的损失不连续。

参数单位的不同如何影响网络性能?

在五参数系统中,角度,宽度,高度和中心点坐标具有不同的测量单位,并且它们与IoU显示出相当不同的关系,如下图所示。简单地将它们加起来会导致不一致的回归性能。

图片

解决方法

为了解决上述两个问题,本文分别针对五参数和八参数设计了旋转损失。

1.五参数旋转损失

由于l1损失函数在五参数情况下,在边界会出现损耗不连续的情况。本文设计了新的损失函数lmr :

lcp 是中心点损失,lmr 的第一项是L1损失。第二项是通过消除角度周期性以及高度和宽度的交换性校正损失使其连续。当其未达到角度参数的范围边界时,该校正项大于 L1 损失。当 L1 损失突然发生不连续时,这种校正变得正常。换句话说,这种校正可以看作是对突变位置的L1-损失进行对称。最后,损失为最小的L1-损失和校正损失。lmr 曲线是连续的。

2.八参数旋转损失

为了避免固有的回归不一致,本文针对八参数表示法中顶点的顺序问题做了设计。

主要步骤是先确定最左边的点(如果矩形是水平的则有两个最左面点,取上面的那个)。然后通过叉乘找到对角点,也就是第三个点。最后利用这两个点构成的向量以及叉乘方法,根据逆时针或者顺时针的顺序要求找点其他两个点。

但是,在八参数回归模型中仍然存在损失不连续性。

如下图所示,从蓝色预选框到实际位置的回归过程。绿色真实框为{(a→a),(b→b),(c→c),(d→d)},但显然理想的回归过程应为{(a→b),(b→c),(c→d),(d→a)}。这种情况也导致模型训练困难和回归不平滑。

因此,本文设计了八参数版本的旋转损失函数。分别将预选框的四个顶点顺时针移动一位,保持预选框顶点的顺序不变,将预选框的四个顶点逆时针移动一位。取三种情况下的最小值。

思考展望

文章提到中心点,长宽和角度单位度量的不同会对训练的模型的结果产生影响。但是很多通用的目标检测网络中,回归损失函数的发展是经历了L-norm—>IoU—>GIoU—>DIoU—>CIoU—>EIoU的过程,正是因为使用L-norm作为回归损失无法兼顾边界框回归的三大几何因素:重叠面积、中心点距离、纵横比,才发展成了IoU系列。

为什么在旋转框的目标检测任务中仍在L-norm的回归上进行优化?是否可以在IoU系列上增加角度参数从而做到更好的位置回归?

- END -

如果觉得有用,就请分享到朋友圈吧!

△点击卡片关注极市平台,获取最新CV干货

公众号后台回复“CVPR21检测”获取CVPR2021目标检测论文下载~


极市干货
神经网络:视觉神经网络模型优秀开源工作:timm库使用方法和最新代码解读
技术综述:综述:神经网络中 Normalization 的发展历程CNN轻量化模型及其设计原则综述
算法技巧(trick):8点PyTorch提速技巧汇总图像分类算法优化技巧


CV技术社群邀请函 #

△长按添加极市小助手
添加极市小助手微信(ID : cvmart4)

备注:姓名-学校/公司-研究方向-城市(如:小极-北大-目标检测-深圳)


即可申请加入极市目标检测/图像分割/工业检测/人脸/医学影像/3D/SLAM/自动驾驶/超分辨率/姿态估计/ReID/GAN/图像增强/OCR/视频理解等技术交流群


每月大咖直播分享、真实项目需求对接、求职内推、算法竞赛、干货资讯汇总、与 10000+来自港科大、北大、清华、中科院、CMU、腾讯、百度等名校名企视觉开发者互动交流~



觉得有用麻烦给个在看啦~  
浏览 4
点赞
评论
收藏
分享

手机扫一扫分享

举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

举报