把一组.mat或png格式的数据集转化为.npy

<注意>其中cv2.imdecode() 读取包含有中文的路径IMREAD_LOAD_GDAL使用gdal读取图片

def geneTrainNpy2(image_path,mask_path):
    image_name_training= glob.glob(os.path.join(image_path,"*.mat"))
    mask_name_training  = glob.glob(os.path.join(mask_path,"*.png"))

    image_arr = []
    mask_arr = []
    for index,item in enumerate(image_name_training):
        img = scio.loadmat(item)               
        image=(img['data'])/255#归一化0.1    
                          
        masks =  cv2.imdecode(np.fromfile(mask_name_training[index],dtype=np.uint8),cv2.IMREAD_LOAD_GDAL)
        masks = img_as_float32(masks)  unit8 转化为float32
        masks = masks[:, :,np.newaxis]   
                                      
        image_arr.append(image)
        mask_arr.append(masks)
    image_arr = np.array(image_arr)
    mask_arr = np.array(mask_arr)
    return image_arr,mask_arr

你可能感兴趣的:(python)