「Deep Learning」物体检测经典卷积网络模型
Sina Weibo:小锋子Shawn
Tencent E-mail:[email protected]
http://blog.****.net/dgyuanshaofeng/article/details/78036192
Kaiming和Ross在CVPR Tutorial on Deep Learning for Objects and Scenes中介绍物体识别和物体检测的进展。之前已经对图像分类的模型进行介绍,现在根据Ross给出的一张图[1]以及其他方法对近年来的模型进行回顾。如图1所示为一些主干模型或者先驱模型,其他模型基本基于这些模型进行改进或者其他领域应用这些模型。
图1
候选模型:第一类:Mask R-CNN, Faster R-CNN, Fast R-CNN 和 R-CNN;第二类:SSD系列;第三类:YOLO系列;第四类:R-FCN系列。
极致的Mask R-CNN
KPR(Kaiming Piotr Ross)三人联手发布这篇论文MRCNN,把关键点检测、个例分割、物体检测等任务一网打尽。下面为模型介绍:(Mask建立在Faster之上,加了个第三分支,用以输出物体的mask,也就是分割区域;其它两个分支分别输出class和box)
Mask模型的关键模块是像素点之间的对齐(alignment)
第一部分:Faster R-CNN,见相应的部分。
第二部分:Mask R-CNN。第一,RPN,取得region proposal;第二,预测class和offset;第三,为每一个RoI输出二值mask。因此,针对每一个采样的RoI,多任务损失为L(class)+L(box)+L(mask)。前面两个损失如Faster。L(mask)为平均二值交叉熵损失,平均的意思是针对一个RoI,Kaiming等人用了逐像素的sigmoid,也就是是“该物体k”和“不是该物体k”。这里恺明提出,a per-pixel sigmoid and a binary loss会比a per-pixel softmax and a multinomial cross-entropy loss更利于个例分割。熟悉FCN的同学,知道输入和输出的图像大小是一样,也就是点对点建立了映射,这里的mask针对输入物体也是一样的,但是RoI特征不会和RoI对齐(quantization引起),所以文章里面提出了一个关键层RoIAlign layer,用于移除harsh quantization的影响,将提取的特征和输入区域进行对齐。文章还比较了Jifeng Dai的RoIWarp方法。结论为:Align好于Warp,最差为Pool。backbone的选择为ResNets和ResNeXt,作为特征提取器。
第二部分:Mask R-CNN。第一,RPN,取得region proposal;第二,预测class和offset;第三,为每一个RoI输出二值mask。因此,针对每一个采样的RoI,多任务损失为L(class)+L(box)+L(mask)。前面两个损失如Faster。L(mask)为平均二值交叉熵损失,平均的意思是针对一个RoI,Kaiming等人用了逐像素的sigmoid,也就是是“该物体k”和“不是该物体k”。这里恺明提出,a per-pixel sigmoid and a binary loss会比a per-pixel softmax and a multinomial cross-entropy loss更利于个例分割。熟悉FCN的同学,知道输入和输出的图像大小是一样,也就是点对点建立了映射,这里的mask针对输入物体也是一样的,但是RoI特征不会和RoI对齐(quantization引起),所以文章里面提出了一个关键层RoIAlign layer,用于移除harsh quantization的影响,将提取的特征和输入区域进行对齐。文章还比较了Jifeng Dai的RoIWarp方法。结论为:Align好于Warp,最差为Pool。backbone的选择为ResNets和ResNeXt,作为特征提取器。
未完,待续。