基于faster-rcnn网络的视力表字符检测


本实验基于pytorch的faster-rcnn网络实现,从自己制作数据集到完成模型的训练。

faster-rcnn网络结构完整代码:https://github.com/bubbliiiing/faster-rcnn-pytorch(来源于:@Bubbliiiing)

一、数据集的制作

1、获取数据

我们可以通过爬虫爬取网上不同的视力表储存起来,也可以自己从网上下载一些图片,因为是自己做个小实验,所以不必下载太多。

2、制作所要的数据图片

从下载下来的视力表中截取不同的“E”,再把不同的“E”放到一张墙壁图片上。对于放上去的“E”,我们也可以进行加噪处理,增强数据,这边用的是椒盐噪声处理。

在这里插入图片描述

对于制作好的图片,我们可以通过对图片上下采样,扩大数据集,减少工作量。再剔除一些太过歪斜的图片就可以。然后把整个数据集保存在faster-rcnn网络文件夹中VOC2007文件中一个名为JPEGImages的文件夹中。并随机保存一张图片在img文件夹中,以供预测使用。

3、添加标签

我们可以使用labelimg这个软件对图片中的数据进行标注。

在这里插入图片描述

然后保存在与JPEGImages同一个文件夹下的Annotations文件夹中备用。

二、模型的训练

1、用编译器打开文件夹

用vscode打开文件夹。目录如下:

在这里插入图片描述

2、修改部分参数

①修改model_data文件下的voc_classes.txt文件,改成我们所需要的标签。

在这里插入图片描述

②修改voc_annotation.py文件中第13行代码中的标签改成我们需要的。

在这里插入图片描述

3、准备工作

①运行vocdevkit文件夹中voc2007文件中的voc2frcnn.py文件代码。

②运行voc_annotation.py文件代码。

4、开始训练

运行train.py文件开始模型的训练。

三、模型的预测

1、准备工作

将文件frcnn.py中的第23行中的路径改为logs文件夹中Epoch为100的文件全称。

在这里插入图片描述

2、开始预测

运行predict.py文件。

在终端中输入img文件夹中要预测的图片。

在这里插入图片描述

输入图片路径后按enter键就能得到这张图片的预测结果的图片,并在终端中输出预测框的参数。
在这里插入图片描述

四、模型评估

1、修改参数

将VOCdevkit文件下的VOC2007文件中的voc2frcnn.py中代码的第24行的1该为小于1大于等于0的数,这边直接改为0。并运行代码。
在这里插入图片描述

2、处理数据

依次运行代码文件:

①voc_annotation.py

②get_dr_txt.py

③get_gt_txt.py

④get_map.py

3、得到结果

在results文件夹中我们就可以看到我们对模型的评估结果,包括各个标签的AP、F1、Precision、Recall、mAP等值。

在这里插入图片描述

mAP:

在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值