一、数据集文件夹

新建一个文件夹,用来存放整个数据集,或者和voc2007一样的名字:VOC2007

然后像voc2007一样,在文件夹里面新建如下文件夹:

二、将训练图片放到JPEGImages

将所有的训练图片放到该文件夹里,然后将图片重命名为VOC2007的“000005.jpg”形式

三、标注图片,标注文件保存到Annotations

使用labelIImg 标注自己的图片

2、按照网页上的使用方法使用

(1)安装PyQt4和Lxml

(2)在labelImage 的目录下 shift+右键打开cmd 运行一下命令:

pyrcc4 -o resources.py resources.qrc

python labelImg.py

注:这个时候,就会出现labelimage的窗口

(3)labelimg窗口的使用方法:

• 修改默认的XML文件保存位置,可以用“Ctrl+R”,改为自定义位置,这里的路径不能包含中文,否则无法保存。

• 源码文件夹中使用notepad++打开data/predefined_classes.txt,可以修改默认类别,比如改成bus、car、building三个类别。

•“Open Dir”打开需要标注的样本图片文件夹,会自动打开第一张图片,开始进行标注

• 使用“Create RectBox”开始画框

• 完成一张图片后点击“Save”,此时XML文件已经保存到本地了。

• 点击“Next Image”转到下一张图片。

• 标注过程中可随时返回进行修改,后保存的文件会覆盖之前的。

• 完成标注后打开XML文件,发现确实和PASCAL VOC所用格式一样。

每个图片和标注得到的xml文件,JPEGImages文件夹里面的一个训练图片,对应Annotations里面的一个同名XML文件,一 一 对应,命名一致

标注自己的图片的时候,类别名称请用小写字母,比如汽车使用car,不要用Car

pascal.py中读取.xml文件的类别标签的代码:

cls = self._class_to_ind[obj.find('name').text.lower().strip()]

写的只识别小写字母,如果你的标签含有大写字母,可能会出现KeyError的错误。

四、ImageSets\Main里的四个txt文件

在ImageSets里再新建文件夹,命名为Main,在Main文件夹中生成四个txt文件,即:

test.txt是测试集

train.txt是训练集

val.txt是验证集

trainval.txt是训练和验证集

VOC2007中,trainval大概是整个数据集的50%,test也大概是整个数据集的50%;train大概是trainval的50%,val大概是trainval的50%。

txt文件中的内容为样本图片的名字(不带后缀),格式如下:

根据已生成的xml,制作VOC2007数据集中的trainval.txt ; train.txt ; test.txt ; val.txt

trainval占总数据集的50%,test占总数据集的50%;train占trainval的50%,val占trainval的50%;

上面所占百分比可根据自己的数据集修改,如果数据集比较少,test和val可少一些

代码如下:

%注意修改下面四个值

xmlfilepath='E:\Annotations';

txtsavepath='E:\ImageSets\Main\';

trainval_percent=0.5; #trainval占整个数据集的百分比,剩下部分就是test所占百分比

train_percent=0.5; #train占trainval的百分比,剩下部分就是val所占百分比

xmlfile=dir(xmlfilepath);

numOfxml=length(xmlfile)-2;#减去.和.. 总的数据集大小

trainval=sort(randperm(numOfxml,floor(numOfxml*trainval_percent)));

test=sort(setdiff(1:numOfxml,trainval));

trainvalsize=length(trainval); #trainval的大小

train=sort(trainval(randperm(trainvalsize,floor(trainvalsize*train_percent))));

val=sort(setdiff(trainval,train));

ftrainval=fopen([txtsavepath 'trainval.txt'],'w'); ftest=fopen([txtsavepath 'test.txt'],'w'); ftrain=fopen([txtsavepath 'train.txt'],'w'); fval=fopen([txtsavepath 'val.txt'],'w'); for i=1:numOfxml if ismember(i,trainval) fprintf(ftrainval,'%s\n',xmlfile(i+2).name(1:end-4)); if ismember(i,train) fprintf(ftrain,'%s\n',xmlfile(i+2).name(1:end-4)); else fprintf(fval,'%s\n',xmlfile(i+2).name(1:end-4)); end else fprintf(ftest,'%s\n',xmlfile(i+2).name(1:end-4)); end end fclose(ftrainval); fclose(ftrain); fclose(fval); fclose(ftest);

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

MATLAB图像数据集的制作,使用labelImg制作自己的数据集(VOC2007格式)用于Faster-RCNN训练...相关推荐

  1. 将数据集做成VOC2007格式用于Faster-RCNN训练

    0.文件夹名 首先,确定你的数据集所放的文件夹名字,例如我的叫logos. (或者和voc2007一样的名字:VOC2007) 1.图片命名 虽然说图片名对训练没什么影响,但建议还是按VOC2007那 ...

  2. 目标检测simple Faster R-CNN训练自己的数据集

    一.复现 刚开始接触目标检测,自己动手复现的第一个开源项目是github上chenyuntc的simple faster rcnn.历经千辛万苦最后貌似因为服务器显卡内存不够,在训练时一直出现一个错误 ...

  3. Faster RCNN训练自己数据集报错记录及解决

    Faster R-CNN源码网址:https://github.com/dBeker/Faster-RCNN-TensorFlow-Python3.5点击打开链接 环境:python3.6 tenso ...

  4. Faster RCNN训练FLIR红外线数据集

    1. Fater RCNN检测网络下载 网络学习视频 [源码地址]https://github.com/bubbliiiing/faster-rcnn-pytorch 2. FLIR 数据集准备 数据 ...

  5. faster rcnn 训练自己的数据集---踩坑记录!!!

    1.下载代码: git clone https://github.com/jwyang/faster-rcnn.pytorch.git 也可以暴力下载<--直接download压缩包--> ...

  6. faster rcnn在自己的数据集上训练

    本文是一个总结,参考了网上的众多资料,汇集而成,以供自己后续参考. 一般说来,训练自己的数据,有两种方法:第一种就是将自己的数据集完全改造成VOC2007的形式,然后放到py-faster-rcnn/ ...

  7. 【MATLAB深度学习】采用Faster R-CNN实现车辆目标检测

    本文展示了如何使用MATLAB训练Faster R-CNN目标检测器,实现对车辆的检测.本例使用一个包含295张图像的小标记数据集.每个图像包含一个或两个已标记的车辆目标.一个小的数据集对于探索 Fa ...

  8. 使用Faster R-CNN(linux-pytorch)训练自己的数据集过程记录

    目录 准备工作 源码下载 配置环境 制作VOC数据集 data目录结构 训练 编译CUDA依赖环境 预训练模型 修改pascal_voc.py文件 进行训练 遇到的问题 主要参考文章 准备工作 源码下 ...

  9. Caffe版Faster R-CNN可视化——网络模型,图像特征,Loss图,PR曲线

    可视化网络模型   Caffe目前有两种常用的可视化模型方式: 使用Netscope在线可视化 Caffe代码包内置的draw_net.py文件可以可视化网络模型 Netscope能可视化神经网络体系 ...

最新文章

  1. C# 控件置于最顶层、最底层
  2. Android 国际化问题
  3. Intelij idea工具设置片,用64位工作,用32位运行
  4. Dubbo环境搭建-ZooKeeper注册中心
  5. 基于深度学习的CTR模型DeepCTR 更新啦!
  6. 有1,2,3,4四个数字,能组成多少个互不相同且无重复数字的三位数 都是多少
  7. Mybatis Interceptor 拦截器原理 源码分析
  8. The “data“ option should be a function that returns a per-instance value in component definitions
  9. python多线程同步机制condition
  10. 度量术语之二:应用类和开发类生产率(实际度量案例)
  11. socket编程简单Demo讲解及源码分享(C# Winform 内网)
  12. Oracle中的包、存储过程、函数被锁定解决方案
  13. 摆脱设备操作桎梏 汉锐股份教育录播系统解密
  14. 基于jQuery的AJAX和JSON的实例
  15. macbook 查看本机ip地址
  16. win10清理_卸载全家桶之后:用win10自带杀软,怎么清理电脑垃圾?
  17. w ndows英文读音,Windows是什么意思
  18. 微信(WeChat web page)
  19. 适用于LeetCode的TypeScript编程调试环境
  20. 社招:海康威视一面2021.04.21

热门文章

  1. python翻转函数_Python翻转单词顺序
  2. PHPSTORM 破解
  3. MySQL(六)聚合函数
  4. [日常训练] 太空飞船
  5. EasyExcel解析加密Excel文件
  6. 详析像增强器的构造及作用——专为微弱信号探测而生
  7. PHP循环读取json数据
  8. Doctype作用及兼容模式与标准模式的区别
  9. Git仓库建立与连接远程仓库
  10. Python进行情感分析