Faster RCNN训练FLIR红外线数据集

本文介绍了如何下载Faster R-CNN模型并应用于FLIR数据集,包括数据集预处理(json转txt和txt转xml),网络调整步骤,以及训练和预测过程中遇到的问题,特别提到了Bicycles检测的挑战。
部署运行你感兴趣的模型镜像

1. Fater RCNN检测网络下载

网络学习视频
[源码地址]https://github.com/bubbliiiing/faster-rcnn-pytorch

2. FLIR 数据集准备

数据集的具体格式和内容请看
FLIR数据集介绍

在该数据集中提供的annotations文件为json,需要将其转换为xml,由于我之前使用yolov5网络训练,所以目前我使用的转换方法是从json转换到txt,目前我从txt进一步转换为xml
json转换为txt

可能有些朋友在转.txt文件中存在很多问题,我直接给大家将我转的传到了网盘,大家可以直接下载
链接:链接:https://pan.baidu.com/s/1H1YNqXWF_Ee632a8E3Tngg
提取码:1c4n

txt转换xml

链接:https://pan.baidu.com/s/1QxbdV0zbzNcQFoo4oQ1fgg
提取码:smua

3. 网络调整

在这里插入图片描述
1.准备数据集

我们需要将生成的image图像xml标签文件放置到VOCdevkit->VOC2007->Annotations和JPEGImages中。

2.制作类文件

如图,在model_data中创建flir.txt文件,内容为People, Bicycles, Cars
在这里插入图片描述
3. 生成对应训练文件

检查是否有txt文件,如果有删除,需要生成对应FLIR数据集的txt文件
在这里插入图片描述
点击voc_annotation.py,修改里面classes_path = model_data/flir.txt,查找jpg修改为jpeg即可。
在这里插入图片描述
点击运行,会生成刚才删除的txt文件,可以打开看看,2007_train.txt中是训练图像的存储地址和标签。
在这里插入图片描述

4. 开始训练

点击train.py文件,修改classes_path = 'model_data/flir.txt'。点击运行按钮开始训练。

在这里插入图片描述

5. 预测

将val验证集的图像放入在这里插入图片描述
修改预测的权重文件(选择loss和val-loss都小的权重值即可),修改类文件位置。
在这里插入图片描述
在这里插入图片描述
更改输入文件名称,复制改成导入的文件名称。
在这里插入图片描述

运行predict.py程序,生成img_out图像。
在这里插入图片描述
检测结果如下图所示:
在这里插入图片描述
在这里插入图片描述

总结

对比我之前训练的yolov5来说,这个检测效果感觉没那么好,但是相对于纯视觉来说已经好多了,削弱了光线的影响。

最后,我发现我训练的结果中自行车Bicycles的检测有点问题,如果有博友按照这个方法训练完成了,可以看看Bicycles类能不能正常检测。

您可能感兴趣的与本文相关的镜像

Yolo-v5

Yolo-v5

Yolo

YOLO(You Only Look Once)是一种流行的物体检测和图像分割模型,由华盛顿大学的Joseph Redmon 和Ali Farhadi 开发。 YOLO 于2015 年推出,因其高速和高精度而广受欢迎

### 关于 Faster R-CNN 在 VOC 2012 数据集上的训练结果 在讨论 Faster R-CNN 训练结果之前,值得注意的是大部分公开实验主要集中在 PASCAL VOC 2007 测试集上。然而,在实际应用中,VOC 2012 数据集同样被广泛用于模型评估和改进。 当使用 VGG-16 网络架构并基于多尺度锚框设计时,Faster R-CNN 展现出了强大的性能[^3]。具体来说: - **数据准备**:通常情况下,为了获得更好的泛化能力,会采用联合训练的方式,即同时利用 VOC 2007 和 VOC 2012 的 `trainval` 集合来增强训练样本多样性。 - **特征提取**:得益于卷积层计算的单尺度图像输入以及多尺度锚框的设计,即使只在一个固定大小的图片上运行,也能有效处理不同尺寸的目标对象。 尽管直接针对 VOC 2012 单独报告的具体 mAP (mean Average Precision) 数值较少见,但从现有资料可以推测,如果遵循类似的配置——比如使用相同的预训练权重初始化、相似的数据增广策略等,则预期可以在该数据集上取得接近甚至优于仅用 VOC 2007 训练的表现。 下面是一个简单的 Python 代码片段展示如何加载预定义好的 Faster R-CNN 模型来进行预测,虽然这里不涉及具体的 VOC 2012 结果输出,但提供了实现思路: ```python from faster_rcnn import FasterRCNN import torch from torchvision import transforms from PIL import Image device = 'cuda' if torch.cuda.is_available() else 'cpu' model = FasterRCNN(pretrained=True).to(device) transform = transforms.Compose([ transforms.ToTensor(), ]) image_path = "path_to_your_image.jpg" img = Image.open(image_path).convert('RGB') input_tensor = transform(img).unsqueeze(0).to(device) with torch.no_grad(): predictions = model(input_tensor) ```
评论 19
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Fighting_1997

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值