当前位置: 首页 > news >正文

paddle dataset

paddle实现图像旋转

import numpy as np
from PIL import Image
from matplotlib import pyplot as plt
from paddle.vision.transforms import  functional as F
import cv2image=cv2.imread('./1.jpg')
image=cv2.cvtColor(image,cv2.COLOR_BGR2RGB)# 图像旋转 opencv
# imgR90 = cv2.rotate(image, cv2.ROTATE_90_CLOCKWISE)
# # imgR90 = np.rot90(image, 1)  # numpy 矩阵旋转 90*1=90 度
# cv2.imshow('image',imgR90)
# cv2.waitKey()# # 图像旋转 使用PIL
# img=Image.fromarray(image)
# img=img.rotate(180)
# img.show()
# img=np.array(img)
# plt.imshow(img)
# plt.show()
# cv2.imshow('img',img)  # opencv显示的格式是bgr 其他的都是rgb
# cv2.waitKey()# 图像旋转 使用paddle
image=Image.fromarray(image)
rotate_img=F.rotate(image,90)
# rotate_img.show()
image=np.array(rotate_img)
plt.imshow(image)
plt.show()

paddle实现数据增强

import cv2
import numpy as np
from matplotlib import pyplot as plt
from paddle.vision import Compose,RandomHorizontalFlip,RandomCrop,Normalize,RandomRotation,RandomVerticalFlip,ColorJittertransfrom=Compose([# Normalize(mean=[125],std=[125],data_format="HWC"),RandomHorizontalFlip(1),RandomRotation(180),RandomCrop(200),RandomVerticalFlip(0.5),ColorJitter(brightness=0.5, contrast=0.5, saturation=0.5, hue=0)  #图像的亮度、对比度、饱和度和色调])
while(True):image = cv2.imread('1.jpg')# image=np.expand_dims(image,axis=2)image = cv2.cvtColor(image, cv2.COLOR_BGR2RGB)image = transfrom(image)# image=np.clip(image,0,1)plt.imshow(image)plt.show()

dataset

import os
import cv2
import numpy as np
from paddle.io import Dataset
from paddle.vision.transforms import Normalize,Compose,RandomHorizontalFlip,ColorJitter,CenterCrop,RandomVerticalFlip,RandomRotation
from matplotlib import pyplot as pltclass MyDataset(Dataset):def __init__(self,data_dir,data_txt,transform=None):super().__init__()self.data_list=[]self.data_dir=data_dirwith open(data_txt,encoding='utf-8') as f:for line in f.readlines():image_path=line.strip()self.data_list.append(image_path)self.transform=transformdef __getitem__(self, index):index=index%len(self.data_list)image_path=self.data_list[index]image_path=os.path.join(self.data_dir,image_path)image=cv2.imread(image_path)image=cv2.cvtColor(image,cv2.COLOR_BGR2RGB)# 飞桨训练格式默认为float32image=image.astype('float32')if self.transform is not None:# print('h')image=self.transform(image)return imagedef __len__(self):return len(self.data_list)# 定义数据预处理方法
transform=Compose([RandomHorizontalFlip(1),RandomVerticalFlip(1),RandomRotation(360)# Normalize(mean=[125],std=[125],data_format='CHW'),# ColorJitter(brightness=0.5, contrast=0.5, saturation=0.5, hue=0.5),# CenterCrop(100)]
)dataset=MyDataset(data_dir='./fruit-detection/JPEGImages',data_txt='./fruit-detection/ImageSets/Main/train.txt',transform=transform)
image=dataset[1]
# image=np.clip(image,0,1)
print(type(image))
plt.imshow(image.astype(np.uint8))
plt.show()
http://www.lryc.cn/news/237312.html

相关文章:

  • 接口自动化测试实战:JMeter+Ant+Jenkins+钉钉机器人群通知完美结合
  • HAL库STM32串口开启DMA接收数据
  • Web安全研究(五)
  • 2023.11.17-hive调优的常见方式
  • ts 联合react 实现ajax的封装,refreshtoken的功能
  • CISP模拟试题(一)
  • 轻量封装WebGPU渲染系统示例<35>- HDR环境数据应用到PBR渲染材质
  • 春秋云境靶场CVE-2022-28512漏洞复现(sql手工注入)
  • 数字化文化的守护之星:十八数藏的非遗创新之道
  • [机缘参悟-119] :反者道之动与阴阳太极
  • Docker搭建Redis集群
  • 学习Opencv(蝴蝶书/C++)代码——2.OpenCV初探
  • 基于AVR单片机的便携式心电监测设备设计与实现
  • 微机原理_14
  • 【Flink】核心概念:并行度与算子链
  • milvus采坑一:启动服务就会挂掉
  • WPF Visual, UIElement, FrameworkElement, Control这些类的区别
  • Python-----PyInstaller的简单使用
  • 8 Redis与Lua
  • 10个令人惊叹的Go语言技巧,让你的代码更加优雅
  • vue3 setup展示数据
  • 原理Redis-Dict字典
  • 卷积神经网络(VGG-19)灵笼人物识别
  • MQTT协议详解
  • WordPress画廊插件Envira Gallery v1.9.7河蟹版下载
  • 认识前端包常用包管理工具(npm、cnpm、pnpm、nvm、yarn)
  • 使用树莓派学习Linux系统编程的 --- 库编程(面试重点)
  • vs2017打开工程提示若要解决此问题,请使用以下选择启动 Visual Studio 安装程序: 用于 x86 和 x64 的 Visual C++ MFC
  • Redis学习笔记17:基于spring data redis及lua脚本批处理scan指令查询永久有效的key
  • 今天遇到Windows 10里安装的Ubuntu(WSL)的缺点