目标检测: Faster R-CNN原理
Faster R-CNN论文地址: https://arxiv.org/pdf/1506.01497.pdf
1 概述:
Fast R-CNN仍然使用selective search, 会存在一些问题:
1 使用selective search获取候选框, 这是在CPU上运算的, 会出现性能瓶颈, 没有充分利用GPU加速;
2 统一的一套候选框并未对特定数据集进行优化, 因此会导致训练速度慢和精度提升困难
因此衍生的新思路就是使用CNN训练一个RPN, 用此来提取候选框, RPN网络是一个全卷积神经网络,通过共享卷积层特征可以实现proposal的提取,由于使用了GPU加速,
RPN提取一幅像的proposal只需要10ms.
Faster R-CNN结构:
网络结构图 (https://sevenold.github.io/2019/06/object-detection-FasterRCNN/):
1 RPN. 是全卷积网络, 目的就是提取候选框, 取代selective search
2 Fast R-CNN. 使用RPN提取的候选框进行检测定位
2 步骤
1 预训练一个分类CNN
2 训练CNN+RPN. 使用预训练的CNN, 输出特征图, 微调RPN, 当IoU>0.7为正例, <0.3为负例
2.1 以特征图每个像素为中心, 以滑窗形式计算Anchor box(3种尺寸,3种宽高比, 每个像素点9个box)
2.2 一个分支为分类(是背景/不是背景), 一个分支为回归xywh(以中心点为基准)
3 固定RPN, 训练CNN+Fast R-CNN. 使用最初预训练的CNN, 输出特征图, 使用RPN输出的候选框, 训练CNN+Fast R-CNN
4 固定CNN+Fast R-CNN, 训练RPN, 此时共享第三步的CNN
5 固定CNN+RPN, 训练Fast R-CNN, 此时共享第三步的CNN
6 重复4和5步
3 损失理解
4 性能比对
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· winform 绘制太阳,地球,月球 运作规律
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人