数据处理--数据扩充

1.图片水平and垂直翻转

import cv2

img = cv2.imread('cv2.flip().jpg')
h_flip = cv2.flip(img, 1)  # 水平翻转
v_flip = cv2.flip(img, 0)  # 垂直翻转
hv_flip = cv2.flip(img, -1)  # 水平垂直翻转

cv2.namedWindow('Original Image', cv2.WINDOW_KEEPRATIO)
cv2.imshow('Original Image', img)
cv2.namedWindow('Horizontally Flipped', cv2.WINDOW_KEEPRATIO)
cv2.imshow('Horizontally Flipped', h_flip)
cv2.namedWindow('Vertically Flipped', cv2.WINDOW_KEEPRATIO)
cv2.imshow('Vertically Flipped', v_flip)
cv2.namedWindow('Horizontally & Vertically Flipped', cv2.WINDOW_KEEPRATIO)
cv2.imshow('Horizontally & Vertically Flipped', hv_flip)

cv2.waitKey(0)
cv2.destroyAllWindows()

水平翻转

               

1.1批量垂直翻转图片

import cv2
import os
import numpy as np

def read_path(file_pathname):
    for filename in os.listdir(file_pathname):
        filename = filename
        print(filename)
        img = cv2.imread(file_pathname+'/'+filename)
        imageR1p0 = cv2.flip(img, 0)
        cv2.imwrite(r"F:/mydata_YJN/Data\FEN JI/yuantu_turn/img_turn_val/level_1" + "/" + filename, imageR1p0)
read_path(r"F:/mydata_YJN/Data/FEN JI/fenji_yuantu/yantu_val/level_1")

2. 批量旋转图片

以旋转90°为例:

import os
from PIL import Image


def read_path(file_pathname):                       # 函数的输入是图片所在的路径
    for filename in os.listdir(file_pathname):
        print(filename)                             # 所操作图片的名称可视化
        img = Image.open(file_pathname+'/'+filename)            # 读取文件
        im_rotate = img.rotate(90)                              #图像旋转
        im_rotate.save(r"E:\DATA\HR_IMG\Rotate\test for Rotate 345 degrees\Level-4" + "/" + filename)  # 图片保存

read_path(r"E:/y.document/DATA.D/yauntu/yantu_test/level_4")

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值