FCN制作自己的数据集、训练和测试全流程

本文详细介绍了在Ubuntu 16.04LTS系统中,使用FCN进行数据集制作、训练和测试的全过程。首先讲解如何制作仿照VOC数据集的数据集,包括图片resize、使用labelme进行标注、生成索引图和灰度图。接着,文章阐述了FCN训练前的准备工作,如安装依赖、下载预训练模型,以及数据集的构建。最后,提供了训练网络参数的修改方法和单张图片的测试步骤。整个过程涉及图像标注、VGG16预训练模型的迁移学习等关键技术。
摘要由CSDN通过智能技术生成

FCN制作自己的数据集、训练和测试全流程

花了两三周的时间,把FCN的全部流程走了一遍,期间走了很多弯路,现在记录一下。系统环境:ubuntu 16.04LTS

一、数据集的制作
注:我的数据集是仿照VOC数据集进行制作的

1.resize 数据集

我的GPU显存4G,跑过大的图片带不动,需要resize图片大小,放几个修改图片大小的程序。
(1)单张图片resize

# coding = utf-8  
import Image  

def  convert(width,height):
    im = Image.open("C:\\xxx\\test.jpg")
    out = im.resize((width, height),Image.ANTIALIAS)
    out.save("C:\\xxx\\test.jpg")
if __name__ == '__main__':
    convert(256,256)

(2)resize整个文件夹里的图片

# coding = utf-8
import Image
import os

def convert(dir,width,height):
    file_list = os.listdir(dir)
    print(file_list)
    for filename in file_list:
        path = ''
        path = dir+filename
        im = Image.open(path)
        out = im.resize((256,256),Image.ANTIALIAS)
        print "%s has been resized!"%filename
        out.save(path)

if __name__ == '__main__':
   dir = raw_input('please input the operate dir:')
   convert(dir,256,256)

(3)按比例resize

# coding = utf-8
import Image
import os

def convert(dir,width,height):
    file_list = os.listdir(dir)
    print(file_list)
    for filename in file_list:
        path = ''
        path = dir+filename
        im = Image.open(path)
        out = im.resize((256,256),Image.ANTIALIAS)
        print "%s has been resized!"%filename
        out.save(path)

if __name__ == '__main__':
   dir = raw_input('please input the operate dir:')
   convert(dir,256,256)

2.制作索引图
(1)下载labelme

下载地址:labelme网址
下载后按提示打开软件,进行标注,保存会生成后缀为json的文件。

(2)生成dataset文件夹
在终端输入指令:

labelme_json_to_dataset 你的路径/你的json文件名.json //这里的文件名根据自己的实际情况更改

(3)为文件夹下的label.png着色
首先需要对照VOC分割的颜色进行着色,一定要保证颜色的准确性。
Matlab代码:(这个代码的作用是得出各种颜色的rgb值,颜色值在pascal voc中其实已经知道了,如果类数没有超过21的话,这一步不需要操作)

function cmap = labelcolormap(N)

if nargin==0
    N=256
end
cmap = zeros(N,3);
for i=1:N
    id = i-1; r=0;g=0;b=0;
    for j=0:7
评论 83
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值