VOCMaker是一个针对VOC数据集格式的命名&标注工具,可以输入自己的标签,使用步骤说明如下(来自作者):
将所有的图片放在该目录下的imgs文件夹中,然后在此文件夹中运行`rename.py`,运行完毕后可以编译运行VS工程来进行标注,标注完毕后(记得最后使用功能键`o`来生成`xml`文件),运行`txt.py`在Main中生成`txt`文件。
由于我使用的时候用了win10+anaconda3(python3.5)+vs2015(opencv3.1),主要是python版本的原因,需要对有些代码做出改动,详细步骤及改动情况如下:
1、 图片重命名:
解压VOCMaker,把自己的数据集的所有图片放入VOCMaker-master\VOCMaker\VOCMaker\imgs
在VOCMaker-master\VOCMaker\VOCMaker目录下:
将rename.py文件的第28行改为:
print("renamed "+img+" to"+prename[0:len(prename)-len(str(cnt))]+str(cnt)+".jpg")
第30行改为:
print("done!")
相同目录下打开命令行,运行:python rename.py 对所有图片进行重命名,成功后:
VOCMaker-master\VOCMaker\VOCMaker\JPEGImages下会出现重命名后的图片
2、 人工标注:
在VOCMaker-master\VOCMaker目录下,使用vs15打开VOCMaker.sln,值得一提的是,工程需要配置好opencv,并在x64框架下运行。
将main.cpp第217行: long hFile = 0; 改为:
intptr_t hFile = 0;或者long long hFile =0;
这是由于win10系统的原因,_findnext()第一个参数“路径句柄”,返回类型为long long(intptr_t),在win7中可以定义为long,但是在win10中不行。否则遍历函数_findnext()会报错。
另外需要注意的是,在标注时对图片的操作要点住图片框进行,选框只能从左上到右下。
按键:
空格:切换到下一张图片
a:返回上一张图片
c:取消选框
o:完成,生成xml图片
3、 生成txt:
在VOCMaker-master\VOCMaker\VOCMaker目录下运行txt.py生成txt,类似的要修改文件中的print
4、完成!
网友评论