IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 人工智能 -> 深度学习图像分割——制作自己的VOC数据集 -> 正文阅读

[人工智能]深度学习图像分割——制作自己的VOC数据集

????????自己近期跑了FCN和maskR-CNN网络模型,原作者都是在coco或者是VOC数据集上训练的权重,然后进行识别。其中FCN是用来做语义分割任务的,maskR-CNN采用来双分支结构,同时用来做语义分割和目标检测。

????????COCO数据集有80个类别,VOC数据集有20个类别。当这些数据集类别中没有自己需要的时候,就需要自己动手做自己的数据集了。

????????我自己在做数据集的时候主要使用到了labelme和labelImg两个工具。labelme主要是制作语义分割数据集(ImageSets,JPEGImages,SegmentationClass,SegmentationObject几个文件夹),labelImg主要是制作目标检测数据集(主要是Annoations中的xml文件),最后把两个何在一起就可以使用maskR-CNN来训练了。文件结构如下图所示

建议在annoconda中安装。在conda环境中创建和安装labelme的命令如下:

conda create -n labelme python=3.7
activate labelme
pip install pyqt
pip install labelme

然后再环境中直接使用labelme命令打开工具:

?

点击OpenDir打开要制作数据集图片的文件夹。点击CreatePolygons标记图片就可以了,最后每张图片标记好之后,别忘记点击save保存。此时的会保存问json格式的文件,如图所示:

?接下来就要转换这些json格式为轮廓图片。

在json文件的目录下启动cmd,命令conda activate labelme切换至labelme环境下。

输入命令

labelme_json_to_dataset K:\\MyDataset\\json_data? 注:K:\\MyDataset\\json_data为自己存放json文件的文件夹,运行后在此文件中就会出现转换好的文件夹了。打开其中的某一个:

其中的label.png就是标记好的轮廓图片。最后讲原始图片和轮廓图片按照相对应的名字分别存放在 JPEGImages和SegmentationClass中(我这里Object中放的是和Class文件夹中同样的图片)。

使用如下代码生成ImageSets文件夹中Segmentation文件中的test.txt,train.txt和val.txt文件(分别是测试、训练和验证文件)


import os
import shutil
from sklearn.model_selection import train_test_split

# 从json中挑出mask文件

inputdir = r'K:\MyDataset\label'  # 存放json文件的文件夹
outputdir = r'K:\MyDataset\MyVOC2022\SegmentationClass'
c = 1
for dir in os.listdir(inputdir):
	# 设置旧文件名(就是路径+文件名)
	oldname = inputdir + os.sep + dir + os.sep + 'label.png'  # os.sep添加系统分隔符

	# 设置新文件名
	# c = outputdir + os.sep + dir.split('_')[1]

	a = "0" * (6 - len(str(c)))
	newname = outputdir + os.sep + a + str(c) + '.png'
	shutil.copyfile(oldname, newname)  # 用os模块中的rename方法对文件改名
	print(oldname, '======>', newname)
	c += 1

#原始数据转换  
inputdir = r'K:\MyDataset\pig_image'    #存放初始数据的文件夹
outputdir = r'K:\MyDataset\MyVOC2022\JPEGImages'
c = 1
for dir in os.listdir(inputdir):
    # 设置旧文件名(就是路径+文件名)
    oldname = inputdir + os.sep + dir   # os.sep添加系统分隔符

    # 设置新文件名
    #c = outputdir + os.sep + dir.split('_')[1]

    a = "0" * (6 - len(str(c)))
    newname =outputdir + os.sep +a + str(c) + '.jpg'
    shutil.copyfile(oldname, newname)  # 用os模块中的rename方法对文件改名
    print(oldname, '======>', newname)
    c += 1



#生成txt文件
imagedir = 'K:\MyDataset\MyVOC2022\JPEGImages'
outdir = r'K:\MyDataset\MyVOC2022\ImageSets\Segmentation'

images = []
for file in os.listdir(imagedir):
    filename = file.split('.')[0]
    images.append(filename)
# 训练集测试集验证集比例为:4:2:2
train, test = train_test_split(images, train_size=0.5, random_state=0)
val, test = train_test_split(test, train_size=0.5, random_state=0)

with open(outdir + os.sep +"train.txt", 'w') as f:
    f.write('\n'.join(train))
with open(outdir + os.sep +"val.txt", 'w') as f:
    f.write('\n'.join(val))
with open(outdir + os.sep +"test.txt", 'w') as f:
    f.write('\n'.join(test))







按照以上操作,FCN语义分割数据集就制作好了。接下来制作目标检测的部分:

在conda环境中安装labelImg工具非常简单:

使用命令:pip install labelimg

labelimg打开工具:

点击Create RectBox就可以标记图片了,图片标记号后会生成xml文件:

?这里的文件名要和之前的文件名一一对应。xml文件中存放的是图片中框起来的目标的信息:

?把这些xml文件复制到Annotations文件夹下就可以了。随后就可以使用maskR-CNN来训练这些图片了,训练好之后就可以进行识别预测了。

?

  人工智能 最新文章
2022吴恩达机器学习课程——第二课(神经网
第十五章 规则学习
FixMatch: Simplifying Semi-Supervised Le
数据挖掘Java——Kmeans算法的实现
大脑皮层的分割方法
【翻译】GPT-3是如何工作的
论文笔记:TEACHTEXT: CrossModal Generaliz
python从零学(六)
详解Python 3.x 导入(import)
【答读者问27】backtrader不支持最新版本的
上一篇文章      下一篇文章      查看所有文章
加:2022-05-21 18:58:09  更:2022-05-21 18:59:36 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 5:44:25-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码