参考链接:
1)https://www.zhihu.com/question/265345106/answer/294410307
2)http://nooverfit.com/wp/做机器学习,再别把iou,roi-和-roc,auc-搞混了-!聊聊目标/
3)http://blog.csdn.net/myarrow/article/details/51878004
一.faster-rcnn当中的rpn的理解
该作者以faster-rcnn为例子,说明了,现在主流的目标检测(object Dection)分为两个步骤,第二个步骤就是Regional Proposal过程(Regional Proposal:生成候选区域,产生预测值)
可以看到,图中有两个Classification loss和两个Bounding-box regression loss,有什么区别呢?
step1、
Input Image经过CNN特征提取,首先来到Region Proposal网络。由Regio Proposal Network输出的Classification,这并不是判定物体在COCO数据集上对应的80类中哪一类,而是输出一个Binary的值p,可以理解为 p\in[0,1] ,人工设定一个threshold=0.5。(在这里进行一下解释:一共有80个分类,在80分类以外还有很多其他的物体不需要进行分类,因此通过Regio Proposal Network该层仅仅是判断是否进行下一步操作,是一个二分类,而非80分类)
RPN网络做的事情就是,如果一个Region的 p\geq0.5 ,则认为这个Region中可能是80个类别中的某一类,具体是哪一类现在还不清楚。到此为止,Network只需要把这些可能含有物体的区域选取出来就可以了,这些被选取出来的Region又叫做ROI (Region of Interests),即感兴趣的区域。当然了,RPN同时也会在feature map上框定这些ROI感兴趣区域的大致位置,即输出Bounding-box。
**
So, RPN网络做的事情就是,把一张图片中,我不感兴趣的区域——花花草草、大马路、天空之类的区域忽视掉,只留下一些我可能感兴趣的区域——车辆、行人、水杯、闹钟等等,然后我之后只需要关注这些感兴趣的区域,进一步确定它到底是车辆、还是行人、还是水杯(分类问题)。。。。
**
step2.
接下来的工作就很简单了,假设输入RPN网络的feature map大小为 64\times64 ,那么我们提取的ROI的尺寸一定小于 64\times64,因为原始图像某一块的物体在feature map上也以同样的比例存在。我们只需要把这些Region从feature map上抠出来,由于每个Region的尺寸可能不一样,因为原始图像上物体大小不一样,所以我们需要将这些抠出来的Region想办法resize到相同的尺寸,这一步方法很多(Pooling或者Interpolation,一般采用Pooling,因为反向传播时求导方便)。
假设这些抠出来的ROI Region被我们resize到了 14\times14 或者 7\times7 ,那我们接下来将这些Region输入普通的分类网络,即第一张Faster R-CNN的结构图中最上面的部分,即可得到整个网络最终的输出classification,这里的class(车、人、狗。。)才真正对应了COCO数据集80类中的具体类别。
同时,由于我们之前RPN确定的box\region坐标比较粗略,即大概框出了感兴趣的区域,所以这里我们再来一次精确的微调,根据每个box中的具体内容微微调整一下这个box的坐标,即输出第一张图中右上方的Bounding-box regression。
二.对于Anchor(锚点)的理解
个人理解是:找出Regional Proposal的对称中心点,然后接着对于该点进行修正
三。ROI (region of interest) , 感兴趣区域
我们做任何目标检测在准备数据集时都要选择感兴趣区域,
四。ROC曲线和AUC区域。
首先ROC受试者工作特征曲线,听名字就是从医疗领域引入的。理解之前我们先要回顾一下真阳率(TP),假阳率(FP),假阴率(FN),真阴率(TN)的概念:
来自:https://stats.stackexchange.com/questions/132777/what-does-auc-stand-for-and-what-is-it
很熟悉吧?真阳率(TP)就是预测类别1而事实上是类别1, 假阳率(FP)就是预测类别1但是事实上不是类别1.
把TP作为纵坐标,FP作为横坐标,就是一个类别的ROC曲线了 :
来自; https://stats.stackexchange.com/questions/132777/what-does-auc-stand-for-and-what-is-it
曲线下的蓝色区域就是曲线下区域AUC (Area Under the Curve)了 如果AUC的面积为1,恭喜你,在这个类别上你的准确率是最高的。AUC一般越大越好,说明某个类别的分类准确度越高。
附上roc和auc的理解与使用链接:http://blog.csdn.net/shenxiaoming77/article/details/72627882