数据标注:图像镜像(水平镜像;垂直镜像;对角镜像)

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/u013419318/article/details/102708931

1 介绍

在训练卷积神经网络的时候,常常需要将原有图像数据集进行一定程度上的扩充,采用的手段主要是图像镜像等方法。本文主要实现了图像的批量水平镜像,垂直镜像,对角镜像功能,希望对你有所帮助!

2 源代码 


import cv2 as cv
import os


def image_extend(source_path,save_path):
    '''
    训练数据增强:水平镜像;垂直镜像;对角镜像
    :param source_path:
    :param save_path:
    :return:
    '''
    if not os.path.exists(source_path):
        return
    if not os.path.exists(save_path):
        os.makedirs(save_path)
    for file in os.listdir(source_path):
        img = cv.imread(os.path.join(source_path,file))
        xImg = cv.flip(img, 1, dst=None)  # 水平镜像
        # xImg1 = cv.flip(img,0,dst=None) #垂直镜像
        # xImg2 = cv.flip(img,-1,dst=None) #对角镜像
        cv.imwrite(os.path.join(save_path,str(file.split('.')[0]) + '_x.' + str(file.split('.')[1])),xImg)
        print(file)

if __name__ == '__main__':
    image_extend('H:\\0\\train\\2019-10-10-13-5-57-419_gt','H:\\0\\train\\2019-10-10-13-5-57-419_gt')

3 效果展示 

水平镜像效果:

猜你喜欢

转载自blog.csdn.net/u013419318/article/details/102708931