一、用于分割的lmdb数据生成 data和label两部分
</pre><pre name="code" class="html">import cv2 as cv
import os
import numpy as np
import caffe
from scipy.io import loadmat
#import h5py
#import struct
#Please do not change the parameters without permision!!! PICTURE and MAT
def del_and_create(dname):
if os.path.exists(dname):
shutil.rmtree(dname)
os.makedirs(dname)
def get_img_datum(image_fn):
img = cv.imread(image_fn, cv.IMREAD_COLOR)
img = img[:,:,::-1] #第三维度 的 数据顺序 逆转 即:RGB 转成 BGR 为了对应fcn_finetune_model
img = img.transpose((2,0,1))
#img = np.expand_dims(img,axis=0)
datum = caffe.io.array_to_datum(img, 0)
return datum
def get_gt_datum(gt_fn): #load mat , data_name = 'lb'
gt = loadmat(gt_fn)
gt = gt['lb']
gt = np.expand_dims(gt,axis=0)
datum = caffe.io.array_to_datum(gt, 0)
return datum
def create_dataset():
img_db_fn_train = r'D:\Maxee\LPB40\LMDB_data\LPBA_data_aug\img_train.lmdb'
del_and_create(img_db_fn_train)
img_env_train = lmdb.Environment(img_db_fn_train, map_size=6000*1024*1024)
img_txn_train = img_env_train.begin(write=True, buffers=True)
gt_db_fn_train = r'D:\Maxee\LPB40\LMDB_data\LPBA_data_aug\lb_train.lmdb'
del_and_create(gt_db_fn_t