【总结 Anchor-free1】Anchor-Free Keypoint方法总结以及思路分析

&Anchor-based的shortcoming

1) 使用anchor时,需要在每个特征尺度上密集平铺,而仅有很少一部分是正样本,即正负样本的比例差别很大;最终有很多计算都花费在无用样本,且一般使用时需要进行预处理,挖掘难负例;

2) 需要预定义的anchor size以及aspect ratio。检测性能会收到这些预定义的参数的影响,如果在每一个位置设定的anchor的数量太多,也会导致计算量成倍增长;

3) 使用axis-align的形式:

  • 由于anchor是针对特征图上的点进行提取的,并不是所有的像素点上都会提取对应的anchor,且在每个点上提取的anchor的数量也不尽相同,如果只使用axis-align形式,最终结果可能对于那个bbox中心不在特征图上的点不大友好,最终影响整体的精度;当然,目前也有针对该问题做出的调整,如可以通过预测中心点偏移,参照RepDet中的Adaptive Convolution方法
  • 使用box来作为一个目标的回归结果,仍然会在其中包含大量的背景信息,尤其是在边角区域,而且对于斜放的细长目标会造成更大的影响。在这个方向上,也存在一些改进方式,如ExtremNet提出的使用八边形来描述一个目标,(Segmentation is All You Need)论文中也提出将目标的范围通过椭圆精细化。

 

&Anchor-free方法以及具体思想

1) YOLOv1

YOLOv1摒弃了anchor,使用grid来负责每一块区域的目标检测。主要思想就是将整张图片划分为S×S(7×7)个grid,每个网格检测B(2)个bbox。

分享图片

按照论文讲述的结果,先将图片resize到448×448;然后输入到CNN中,最终输出一个7×7×30的矩阵,其中30表示的是20个类别得分,2个回归框的信息(x, y, w, h, confidence);将最终的结果使用NMS进行处理。

分享图片

显而易见,网上有人觉得这也是anchor的一种变种,但是,我认为这已经不再是anchor,反倒观点更接近于通过点来对bbox回归的思想。只不过YOLOv1是通过先将整张图片分成了多个网格,对应的中心落在该网格内的目标则由这个网格来回归。

Pros

  • 处理速度很快。YOLOv1的运行速度因为预处理部分很简单,只是简单地进行resize,之后直接使用CNN网络进行回归,在后处理中也只是用到了NMS,且最终得到的bbox回归框的个数极少。
  • 降低背景误检。相比于anchor-based方法会提取很多的anchor出来,YOLOv1在运算过程中,会使用到的“anchor”相当少,至多只有7×7×2个。

Cons

  • 模型精度低。因为在运算中使用了很少的box,而且还定义了一个grid至多能识别的目标的数量,对于无目标与多目标存在同一个grid中的情况很不友好。且模型是从数据中学习预测bbox,最终对于新的或者不寻常的aspect ratio或者configuration的目标很难识别,由于使用了多层的卷积层,最终使用到的特征的信息很粗糙。
  • 不适用于密集目标检测。同理。
  • 有着很强的空间限制因为YOLOv1在一个grid中至多只能识别两个目标,而且只能识别一个类。
  • 损失函数等同对待小bbox以及大bbox的误差。

总而言之,YOLOv1可视为anchor-free论文的第一篇发迹文。之后就迎来了anchor-free方面论文的并发期,之后最基础的方法就是CenterNet以及CornerNet。

 

2) CenterNet

CenterNet的主要思想是通过中心点的信息来回归出其他bbox的属性,如中心点与四条边的距离、姿势、方向等信息。

分享图片

首先,CenterNet会计算keypoint heatmap,然后通过网络直接回归出需要使用的信息。这种方法简单、快速、高效而且没有任何的NMS的后处理操作,可以直接端到端地进行训练。但是,只使用中心点进行回归,显然会使得获取的信息过少,可能不足以支撑回归出如此有效的信息,最终影响到检测性能。不过可能是由于其回归的信息很充分,增强了各种信息的表征能力使得能够对结果有所提升,【愚见,之后会重温】

 

3) CornerNet

相比CenterNet从中心点来回归出边界距离获得bbox来说,CornerNet反其道而行,直接使用两个角点:top-left,bottom-right,直接定义bbox,以一组角点来确定一个目标。

分享图片

首先,CornerNet计算出top-left以及bottom-right两个heatmaps,其中分别表明图中的top-left以及bottom-right点的信息,然后通过embeded方法计算top-left集合以及bottom-right集合中点的距离,将距离最近的点分为一个组,作为最终的bbox。其中也是用了一些改进方法,如Corner-Pool,使得计算角点更精确。

当然,这种想法也很好,但是却不可避免地引入了分组的计算算法,增加了计算难度,同时与CenterNet类似,即便此时使用了两个角点的信息来确定一个bbox,此时的角点由于使用了Corner Pool方法融入了更多边的信息,不可避免地导致网络对于边更加敏感,而且忽略了更多的内部细节

 

4) CenterNet-Triplets

这种方法粗略来看就相当于整合了Center以及Corner的信息,相当于在CornerNet的基础上增加了Center的信息作为其中一个判别标准。Corner的heatmaps的生成仍然像CornerNet中一样,只不过多增加一个分支为center heatmap,corner分组后需要判断其中是否包含有center heatmap中的点,没有就可以直接排除。剩下的与CornerNet相似。

分享图片

此外,考虑到corners对目标框中的内部信息把握不准,在CornerPool的基础上进行改进,提出了Cascade Corner Pool,使得corner也能编码一些内部的信息,增强了点的表征力;与此同时,提出了Center Pool,获得水平方向以及竖直方向上的最大值,也能够表示更多的信息。

 分享图片

但是,其一,我觉得使用的Cascade Corner Pool的方法的表义不明,即便在进行第二步的时候确实获取了一些框内的信息,增强了点的表征力,但是使用到的这个内部信息的表义却不是很明确,只能说明加入了一些内部信息时确实对结果产生了有利影响;其次使用到的信息仍然不够,尤其是对回归框的内部信息的使用,虽然使用到了center heatmap,但是最后只是用来做辨别,相当于没有完全利用这部分的信息。

因此在这个基础上是否可以将center的信息也利用进回归框的信息预测中,不过需要考虑一下怎么使用,而且ExtremeNet使用的方法与之也有相同之处

 

5) ExtremNet

ExtremeNet使用到了4条边的极值点,以及中心点,在CenterNet-Triplets的基础上将预测的角点分解为边的极值点,同时分组不再按照embeded计算的距离,而是随机分组。

 分享图片 

首先,网络计算得到5个heatmaps,分别为top、left、bottom、right以及center heatmap,其中top、left、right以及bottom仍然作为bbox获取的途径,每次从其中任取一个点作为一个bbox的四个极值点,然后计算其逻辑中心,如果在center heatmap中存在,则将之视为一个bbox,用作回归过程。

该方法,从分组的方式上来看,显然这个计算量是很大的。其余除了比CenterNet-Triplets多了一些边上的信息外,存在着与之相似的问题,而且网络对边缘的敏感更高

整体来看,这个方法就是对CenterNet-Triplets方法的分解,将Corner的预测转化为极值点的预测,显然,这些点所能包含的信息会更多一些,但增加的信息也有限,不过给我们提供了一个优化结果的思路;将任务分解为更细致的任务,获取到更多信息以及分解任务间的关联性可能会对网络产生好的影响

【注】之后会增加RepDet的内容,同时将使用的密集点检测的Anchor-free的方法也做进一步的总结。

相关文章
相关标签/搜索
四肖八码期期准精选资料 治县。| 毕节市| 齐齐哈尔市| 准格尔旗| 临安市| 晋江市| 清远市| 扶沟县| 曲阳县| 武乡县| 漳平市| 金阳县| 南充市| 泽州县| 定安县| 增城市| 天门市| 丰县| 莒南县| 进贤县| 兰坪| 响水县| 民县| 临泽县| 内江市| 高邮市| 治县。| 澄城县| 山丹县| 金平| 武胜县| 隆德县| 镇宁| 甘洛县| 库车县| 汕头市| 大方县| 当涂县| 泗水县| 霍林郭勒市| 剑河县| 临高县| 柳河县| 宜昌市| 陆丰市| 崇明县| 榆中县| 专栏| 咸宁市| 井陉县| 麟游县| 合江县| 田东县| 丰镇市| 孝感市| 崇仁县| 青海省| 雅安市| 泽普县| 连山| 麦盖提县| 方正县| 镇赉县| 锡林郭勒盟| 芦山县| 凤山县| 建始县| 盐津县| 乌海市| 香河县| 开封市| 临邑县| 肃南| 彝良县| 大新县| 开封县| 神农架林区| 泸州市| 九龙县| 河东区| 六盘水市| 湖北省| 淅川县| 蓬莱市| 罗源县| 新乡县| 泾源县| 普安县| 南丹县| 天台县| 西城区| 泽州县| 德惠市| 宣武区| 吴堡县| 台山市| 马尔康县| 台湾省| 南开区| 墨竹工卡县| 江北区| 沙湾县| 莎车县| 临沭县| 廉江市| 松江区| 襄樊市| 枣阳市| 镇巴县| 石河子市| 大化| 平山县| 彰化县| 陆丰市| 龙游县| 合川市| 和顺县| 灵璧县| 安图县| 嵊州市| 鹤岗市| 噶尔县| 化州市| 揭阳市| 普兰县| 钟山县| 惠水县| 和平区| 奎屯市| 陕西省| 新宾| 富顺县| 凌海市| 来安县| 内乡县| 婺源县| 乌恰县| 景德镇市| 海阳市| 长岛县| 垣曲县| 水富县| 宜兴市| 晋城| 衢州市| 历史| 疏附县| 广东省| 台湾省| 海阳市| 色达县| 平果县| 浑源县| 锡林浩特市| 永清县| 刚察县| 佛山市| 蒙自县| 三穗县| 兴业县| 固始县| 巨野县| 隆尧县| 内江市| 乌鲁木齐市| 武宁县| 凌云县| 莱州市| 清水河县| 哈尔滨市| 曲麻莱县| 泸州市| 镇宁| 冀州市| 祁连县| 太康县| 汽车| 永平县| 青浦区| 遵义市| 信丰县| 江达县| 张家川| 尉犁县| 九龙县| 峨山| 肇源县| 台北市| 年辖:市辖区| 望江县| 湘乡市| 河源市| 乡宁县| 万盛区| 万安县| 布尔津县| 宽城| 阿拉善右旗| 邵阳县| 新巴尔虎左旗| 黎川县| 自贡市| 余干县| 健康| 云林县| 晋州市| 兰溪市| 云阳县| 明水县| 长寿区| 布尔津县| 榆中县| 平阴县| 陵水| 靖西县| 福州市| 界首市| 泰州市| 龙游县| 华亭县| 福贡县| 江安县| 武义县| 子长县| 沙田区| 永吉县| 通榆县| 乌鲁木齐县| 卫辉市| 海晏县| 宜春市| 东辽县| 柯坪县| 昔阳县| 和平区| 庆云县| 济阳县| 新安县| 呼伦贝尔市| 济源市| 红河县| 成武县| 象州县| 屯留县| 武胜县| 黑龙江省| 西畴县| 庆云县| 齐齐哈尔市| 奉新县| 凤城市| 田林县| 南雄市| 台州市| 寿光市| 长垣县| 图片| 名山县| 昌宁县| 怀远县| 娄烦县| 博客| 嵩明县| 兖州市| 兴隆县| 贵州省| 突泉县| 古田县| 红桥区| 阳城县| 北川| 忻州市| 黑河市| 兰州市| 永川市| 永清县| 平和县| 乌恰县| 龙山县| 五家渠市| 无极县| 呼和浩特市| 凯里市| 甘谷县| 大方县| 八宿县| 大庆市| 介休市| 逊克县| 特克斯县| 封开县| 辽宁省| 平邑县| 文山县| 布拖县| 金坛市| 天气| 霍山县| 合江县| 兴化市| 霍邱县| 广宁县| 健康| 玛曲县| 上饶县| 化德县| 木里| 邻水| 抚宁县| 连城县| 嵩明县| 阜平县| 利川市| 布尔津县| 泸定县| 沐川县| 城口县| 明溪县| 凤台县| 北川| 基隆市| 金堂县| 青神县| 灵丘县| 阿拉尔市| 郴州市| 盐源县| 乌鲁木齐市| 新郑市| 仁怀市| 永德县| 绵竹市| 濮阳县| 筠连县| 舞阳县| 湾仔区| 花垣县| 安国市| 吉木乃县| 遂昌县| 元氏县| 西林县| 临泉县| 扎赉特旗| 钟祥市| 苍南县| 宜丰县| 河东区| 临桂县| 辽阳县| 辽阳市| 东乌| 阜康市| 宜兰县| 毕节市| 玛曲县| 屯昌县| 金乡县| 闵行区| 普宁市| 永丰县| 缙云县| 青河县| 临猗县| 神池县| 临猗县| 辽阳县| 洱源县| 衡水市| 大化| 吴堡县| 广汉市| 庐江县| 南充市| 同心县| 漳平市| 长海县| 邹城市| 靖边县| 乐都县| 聊城市| 民县| 东阳市| 稻城县| 孝感市| 兴安盟| 湖口县| 弋阳县| 海盐县| 潼关县| 都兰县| 峨山| 辉南县| 兴和县| 鹤岗市| 西峡县| 浮梁县| 扎兰屯市| 通州市| 阿合奇县| 韶关市| 太谷县| 洞头县| 姚安县| 织金县| 普陀区| 清徐县| 武胜县| 申扎县| 双牌县| 宁波市| 缙云县| 峨山| 屯留县| 小金县| 井陉县| 秭归县| 石台县| 惠来县| 克东县| 敖汉旗| 兖州市| 丽江市| 咸宁市| 海宁市| 鲜城| 波密县| 青田县| 广宁县| 霸州市| 霍山县| 兰考县| 林州市| 宿迁市| 衡水市| 汪清县| 丹巴县| 桐乡市| 凤山市| 乳山市| 广南县| 屯留县| 临沂市| 明星| 吴江市| 同心县| 陇川县| 洪湖市| 中方县| 呼伦贝尔市| 遵化市| 林周县| 咸丰县| 荥经县| 西乌珠穆沁旗| 正蓝旗| 瑞昌市| 扎兰屯市| 南和县| 铜川市| 东兰县| 枣庄市| 肃北| 囊谦县| 伊春市| 安西县| 肥东县| 乐至县| 通山县| 博爱县| 仙游县| 邵东县| 盘山县| 酉阳| 五原县| 祁连县| 富蕴县| 凤台县| 察隅县| 凌海市| 那坡县| 镇远县| 抚松县| 广州市| 通江县| 永顺县| 宜城市| 清徐县| 陇西县| 东乡族自治县| 上饶县| 安达市| 仁怀市| 花莲市| 浏阳市| 连南| 昌乐县| 江陵县| 巩义市| 沈阳市| 连山| 当雄县| 华坪县| 延吉市| 雅江县| 乐亭县| 盐边县| 报价| 枞阳县| 丹阳市| 静宁县| 吉安市| 寿宁县| 石台县| 封丘县| 湟中县| 增城市| 泰来县| 西乡县| 开原市| 长岛县| 宜城市| 马山县| 祁阳县| 舒城县| 磐石市| 白城市| 开化县| 永济市| 拉孜县| 遂川县| 通辽市| 阳朔县| 腾冲县| 特克斯县| 伊吾县| 合肥市| 封开县| 东城区| 锡林浩特市| 斗六市| 宁晋县| 安阳市| 彰武县| 商城县| 屏边| 都匀市| 东辽县| 江陵县| 恩平市| 建瓯市| 罗源县| 侯马市| 玛多县| 永登县| 蒙山县| 桂东县| 河间市| 平利县| 惠东县| 娱乐| 南宁市| 萨迦县| 巴林左旗| 彭阳县| 柯坪县| 泽普县| 高州市| 赤水市| 峨边| 琼中| 买车| 台中县| 小金县| 永平县| 轮台县| 邯郸县| 灯塔市| 郯城县| 丹东市| 盱眙县| 张家港市| 吉木萨尔县| 阿鲁科尔沁旗| 井研县| 宣恩县| 怀仁县| 呼玛县| 新郑市| 红河县| 德钦县| 吴桥县| 石景山区| 贺州市| 始兴县| 大连市| 筠连县| 永康市| 青河县| 修武县| 大同市| 秭归县| 毕节市| 左贡县| 称多县| 兰坪| 奉化市| 宝坻区| 临朐县| 金堂县| 高唐县| 古交市| 泽库县| 松原市| 浦北县| 太原市| 确山县| 潮安县| 西盟| 长武县| 峨眉山市| 惠水县| 钦州市| 桐梓县| 平南县| 道孚县| 苍溪县| 建平县| 类乌齐县| 哈尔滨市| 安远县| 若尔盖县| 东方市| 和田市| 乾安县| 蚌埠市| 云霄县| 锡林浩特市| 营山县| 防城港市| 梅河口市| 甘孜县| 咸宁市| 武乡县| 澄江县| 贡山| 民乐县| 日照市| 泽库县| 达拉特旗| 黔南| 德江县| 祁东县| 西林县| 蕉岭县| 临汾市| 临湘市| 大石桥市| 全州县| 中阳县| 十堰市| 宾川县| 西和县| 神木县| 青河县| 朝阳区| 宁安市| 历史| 芮城县| 龙陵县| 综艺| 于都县| 镇安县| 濮阳市| 贵州省| 精河县| 宽甸| 巴南区| 定陶县| 图们市| 上虞市| 金溪县| 且末县| 屯门区| 汝南县| 怀仁县| 驻马店市| 高州市| 新河县| 清水河县| 深泽县| 大连市| 手机| 获嘉县| 徐州市| 南汇区| 大荔县| 将乐县| 岳西县| 梁平县| 杭锦后旗| 仁化县| 桃园市| 阜阳市| 洛川县| 九寨沟县| 英德市| 梅州市| 南川市| 潜江市| 琼结县| 尼木县| 沅陵县| 台州市| 三台县| 长春市| 桑植县| 盐津县| 揭东县| 刚察县| 屯留县| 佳木斯市| 原平市| 天长市| 灵丘县| 泸水县| 华安县| 彰武县| 咸阳市| 长兴县| 周至县| 达拉特旗| 福安市| 桂林市| 无极县| 镶黄旗| 祁门县| 长丰县| 永泰县| 武川县| 繁峙县| 和田县| 武山县| 邵东县| 呼和浩特市| 莫力| 安福县| 阿瓦提县| 昌都县| 寿阳县| 连江县| 建德市| 四平市| 卢湾区| 肇东市| 博兴县| 内丘县| 靖西县| 无为县| 大港区| 社旗县| 新和县| 拜泉县| 闽清县| 宁乡县| 荃湾区| 台南县| 昌吉市| 克拉玛依市| 江门市| 广饶县| 平阴县| 龙泉市| 黄陵县| 神农架林区| 安福县| 白沙| 泽库县| 宁明县| 河曲县| 会昌县| 巴中市| 水城县| 黔东| 乐山市| 寻乌县| 敦化市| 罗田县| 潢川县| 板桥市| 广南县| 茌平县| 体育| 新巴尔虎右旗| 泽库县| 紫云| 南溪县| 白玉县| 眉山市| 正阳县| 枞阳县| 延吉市| 义马市| 依安县| 麻江县| 茌平县| 庄浪县| 大悟县| 崇信县| 汤阴县| 绵阳市| 灵台县| 都匀市| 息烽县| 电白县| 红河县| 高安市| 肇源县| 石河子市| 察隅县| 泗水县| 广平县| 印江| 琼结县| 曲靖市| 永平县| 惠水县| 习水县| 田东县| 古蔺县| 濮阳县| 洪湖市| 绥化市| 西宁市| 鹤壁市| 孟连| 阿坝县| 乳山市| 贵德县| 神池县| 威海市| 南溪县| 苏尼特左旗| 壤塘县| 墨玉县| 长武县| 咸宁市| 济源市| 巩义市| 平阳县| 马公市| 韶山市| 霞浦县| 马龙县| 双辽市| 宁津县| 石柱| 杭锦旗| 百色市| 哈密市| 遂平县| 民县| 衢州市| 收藏| 长寿区| 东阿县| 大石桥市| 黄大仙区| 嘉黎县| 溧阳市| 阿勒泰市| 临猗县| 确山县| 宜州市| 福海县| 宽城| 阿克陶县| 镇安县| 黄平县| 福州市| 北安市| 金川县| 乐业县| 新闻| 通河县| 乐业县| 隆子县| 平乡县| 庐江县| 八宿县| 沅陵县| 府谷县| 高陵县| 岚皋县| 项城市| 巩义市| 辽中县| 通榆县| 惠安县| 洛隆县| 邢台县| 江陵县| 佛坪县| 双鸭山市| 开封县| 揭阳市| 濮阳县| 永顺县| 宜川县| 陇南市| 云林县| 千阳县| 宾阳县| 崇礼县| 米易县| 塘沽区| 马关县| 额济纳旗| 罗田县| 西安市| 黑山县| 舞钢市| 临邑县| 县级市| 库尔勒市| 海伦市| 瓦房店市| 静海县| 榆中县| 哈尔滨市| 康乐县| 随州市| 杂多县| 黎川县| 芦山县| 白银市| 衡水市| 兴城市| 营口市| 南投市| 体育| 东兴市| 伊春市| 外汇| 来凤县| 长治县| 屏山县| 昭平县| 轮台县| 蛟河市| 防城港市| 滦南县| 樟树市| 龙泉市| 龙江县| 鱼台县| 田林县| 贞丰县| 龙州县| 滨州市| 怀远县| 高雄市| 新乡县| 鸡东县| 六枝特区| 赣榆县| 剑川县| 财经| 呼和浩特市| 民县| 兴国县| 鄂伦春自治旗| 灵山县| 威海市| 法库县| 镇原县| 从江县| 邛崃市| 保定市| 乐山市| 抚宁县| 衡南县| 子洲县| 五原县| 临朐县| 清水县| 深泽县| 广丰县| 上饶市| 晋宁县| 淅川县| 秭归县| 屏南县| 卓尼县| 虞城县| 怀柔区| 马龙县| 平潭县| 潼南县| 石河子市| 磴口县| 武邑县| 修水县| 石棉县| 广饶县| 阿城市| 汽车| 泌阳县| 井陉县| 乃东县| 十堰市| 英吉沙县| 咸丰县| 嘉义县| 嘉禾县| 云南省| 轮台县| 邯郸市| 朝阳县| 东光县| http://www.gz1980thinkc.fun http://www.jvz0j9r9o.fun http://www.bo2020salts.fun http://m.yqo5j3rl5v.fun http://m.gz1980bandc.fun http://www.bo2020partys.fun http://www.yqo4j3rl6v.fun http://www.jvz0j1r2o.fun http://m.gz1980logc.fun http://www.bo2020gears.fun http://wap.bo2020skips.fun http://wap.yqo4j6rl8v.fun http://m.gz1980lowerc.fun http://www.bo2020zinisters.fun http://www.yqo9j2rl9v.fun http://m.jvz0j1r0o.fun http://m.gz1980webc.fun http://www.bo2020sucks.fun http://www.yqo0j9rl5v.fun http://wap.yqo5j8rl8v.fun http://m.gz1980causec.fun http://www.bo2020abuses.fun http://wap.bo2020puts.fun http://m.yqo9j7rl2v.fun http://www.gz1980attendc.fun