CornerNet
hourglass network -> prediction module = corner pooling -> heatmaps + embedding + offsets

corner polling,获取角点信息
1、左上角的点和左边和上边的特征有关,因此角池化后会有这两个信息。
2、公式就是当前点到最左线和最上线的距离的和。
3、类似residual block形式,有skip connection

heatmaps,预测角点的位置
1、对负样本做欠采样以及focal loss: 重视困难(错分)样本 = 正样本损失值小,负样本损失值大。
2、改进focal loss, 对不同的负样本点的损失函数采取不同权重值。

offset, 取整计算丢失精度信息
1、像faster rcnn的ROI Pooling有精度丢失问题,引出该计算公式。

embedding,找出同一个目标的两个角点
1、两个损失函数,第一个公式用来缩小同一个目标距离,第二个公式用来扩大不属于同一个目标的距离
2、采用L1范数,大于0.5或者两点来自不同类别的目标都不能构成一对。

注意事项:
1、预测角点时,采用NMS来选择左上角前100个框和右下角前100个框。
2、0值填充作为网络的输入,而不是resize。
3、通过soft-nms 来去除冗余框,只保留前100个预测框

#################
CenterNet
改进CornerNet,提出关键点三元组。

anchor-base缺陷:anchor数量巨大,anchor人工设计,anchor与gt不对齐不利于分类。
anchor-free缺陷:CornerNet全局信息获取能力较弱,无法正确group同一物体的两个点。因为CornerNet的corner pooling仅依赖物体的边沿,并没有利用物体内部信息。这个问题可以通过互补信息解决--比如aspect ratio(anchor利用宽高比加速回归,对点没用)

1、center pooling
- 通过相加特征图水平和垂直方向上最大值获得。
- 首先提取物体边界最大值,然后在边界最大值处继续向内部(图中沿虚线方向)提取最大值,并与边界最大值相加,以此给角点特征提供更加丰富的关联物体语义信息
2、cascade corner pooling
类似corner pooling模块,只不过同时获取内部和边沿信息以增加稳定性。

注意事项:
1、中心区域的尺度会影响错误框去除效果。过小导致小尺度无法去除,过大导致多大尺度无法去除。因此引出尺度可调节的中心区域定义法:对大尺度减少中心域,对小尺度扩大中心域。

最新文章

  1. iOS 有TabBar的VC界面push后隐藏TabBar的方法
  2. [工作中的设计模式]迭代子模式Iterator
  3. FusionCharts简单教程(四)-----基本数字格式
  4. Linux系统管理命令之用户管理
  5. javascript 的 梯子
  6. 夺命雷公狗—angularjs—25—angular内置的方法(高级)
  7. 【leetcode❤python】169. Majority Element
  8. hdoj 5317 RGCDQ
  9. 利用CodeSmith生成抽象工厂步骤
  10. java python oracle推断字符串是否为数字的函数
  11. 冒泡排序 JAVA版
  12. css--多重样式
  13. noi.ac #289. 电梯(单调队列)
  14. opentack-openstack组件及功能(1)
  15. mysql从入门到精通
  16. ML面试题网站及ML模型网站
  17. Android学习之适配器SimpleCursorAdapter
  18. RabbitMQ特性
  19. Centos7 Jenkins
  20. 'java' 不是内部或外部命令,也不是可运行的程序的两个解决办法

热门文章

  1. Kmeans算法实现
  2. JavaScript中的表单编程
  3. import、export 和 export default
  4. FHS 文件层次标准
  5. 第一篇:spring+springMVC项目启动最终笔记(一web.xml)
  6. java_缓冲流(文件内容排序)
  7. 容斥原理——poj1091
  8. SQL中的long text
  9. Servlet和模本办法
  10. PHP-property_exists()函数