用tensorflow进行数据增强

深度学习数据增强@TOC

用tensorflow进行数据增强

这几天跑代码,数据量不多,为了防止过拟合和加强训练准确度,就想着做一些图片的数据增强,在网上找了一些代码,能实现功能但是巨慢,甚至比我深度学习训练都慢,昨天花了一点时间写了一个基于tensorflow的,就很快,记录分享一下。

我的这个是用于深度学习的,所以里面包含了json文件的修改,实现的功能很简单,就是同一张图片调对比度,调亮度,加噪声之类的多生成几张图片,修改原始图片json文件中的文件名得到衍生图片的对应标签,这样数据量就能快速增加。

import json
import os, sys
import cv2
import tensorflow as tf
from PIL import Image
import PIL
import matplotlib.pyplot as plt

def get_json_data(json_path,img_path):
    with open(json_path, 'rb')as f:
        params = json.load(f)
        # 加载json文件中的内容给params
        params['imagePath'] = img_path  # 这两行控制修改的内容 时间有限就写的很草率
        dict = params
        # 将修改后的内容保存在dict中
        f.close()
        # 关闭json读模式
        return dict
# 返回dict字典内容
def write_json_data(dict):
    # 写入json文件
    with open(json_path1, 'w')as r:
        # 定义为写模式,名称定义为r
        json.dump(dict, r, indent=2)  # indent控制间隔
        # 将dict写入名称为r的文件中
        r.close()
# 关闭json写模式

# 图片文件夹路径
file_dir = r'D:/Desktop/sudo/images/'  #保存图片的文件夹
json_dir = r'D:/Desktop/sudo/jsons/'   #保存json文件的文件夹

for img_name in os.listdir(file_dir):
    img_path = file_dir + img_name
    json_path = json_dir + img_name.strip('jpg'
  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
TensorFlow可以用于点云数据增强的任务。点云数据增强是指对点云数据进行一系列的变换操作,以增加数据的多样性和丰富性,从而提高模型的泛化能力。 以下是一些常见的点云数据增强技术: 1. 数据旋转:通过对点云数据进行旋转操作,可以增加数据在不同角度的表示能力。可以使用旋转矩阵来实现点云的旋转。 2. 数据平移:通过对点云数据进行平移操作,可以增加数据在不同位置的表示能力。可以将每个点的坐标向量加上一个平移向量来实现点云的平移。 3. 数据缩放:通过对点云数据进行缩放操作,可以增加数据在不同尺度上的表示能力。可以将每个点的坐标向量乘以一个缩放因子来实现点云的缩放。 4. 数据翻转:通过对点云数据进行翻转操作,可以增加数据在不同方向上的表示能力。可以将每个点的坐标向量的某个分量取负值来实现点云的翻转。 5. 数据噪声添加:通过向点云数据中添加随机噪声,可以增加数据的鲁棒性。可以在每个点的坐标向量上添加一个小的随机扰动来实现点云的噪声添加。 6. 数据剪裁:通过剪裁点云数据的一部分,可以增加数据的局部表示能力。可以选择保留点云中的某个区域,或者随机删除一部分点来实现点云的剪裁。 以上只是一些常见的点云数据增强技术,实际上还可以根据具体任务的需求进行更多的操作和变换。在TensorFlow中,可以使用tf.data.Dataset和tf.data.experimental.preprocessing等模块来实现点云数据的增强。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值