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

做网站需要用到那些软件国内气膜馆建造商

做网站需要用到那些软件,国内气膜馆建造商,模具外发加工订单网,自己做网站如何赚钱吗一、概述 数据增强是一种通过人工或自动方式对数据进行修改或变换#xff0c;以增加数据集规模和多样性的技术。在机器学习中#xff0c;数据增强被广泛应用于解决数据稀缺、数据不平衡、数据噪声等问题#xff0c;提高模型的泛化能力和鲁棒性。 二、为什么需要数据增强 …一、概述 数据增强是一种通过人工或自动方式对数据进行修改或变换以增加数据集规模和多样性的技术。在机器学习中数据增强被广泛应用于解决数据稀缺、数据不平衡、数据噪声等问题提高模型的泛化能力和鲁棒性。 二、为什么需要数据增强 图像增强在深度学习卷积神经网络 (CNN) 背景下至关重要因为它有助于满足有效模型训练对大型且多样化数据集的需求。 CNN 需要大量图像才能有效训练而图像增强提供了一种人为扩展现有数据集的方法。通过缩放、旋转、剪切或裁剪等技术创建图像变化图像增强有助于生成更全面的可能图像集。这种多样化的数据集使模型能够更好地泛化减少过度拟合并在测试或验证过程中对以前未见过的数据进行评估时提高其性能。因此图像增强对于提高训练数据的质量和数量至关重要最终导致更强大和更准确的 CNN 模型。 三、什么时候使用数据增强 图像增强可以作为训练模型之前的预处理步骤也可以在训练过程中实时应用。当用作预处理步骤时应用增强来增加数据集的大小特别是在处理需要扩展的小型训练数据集时。这种方法称为离线或预处理增强涉及生成现有图像的变体以创建更多样化的数据集。应用图像增强时仔细考虑问题领域非常重要因为某些增强策略可能与特定任务无关或无用。例如在对不同类型的汽车进行分类时垂直翻转汽车可能不会为数据集增加价值。因此图像增强的应用应根据问题领域的具体要求进行定制。 四、数据增强实战 原始图像及标签 运行数据增强代码 增强后的数据及标签 关键代码 数据增强 import cv2 import numpy as np from PIL import Image, ImageDrawdef rand(a0, b1):return np.random.rand()*(b-a) adef get_random_data(annotation_line, input_shape, jitter.3, hue.1, sat0.7, val0.4, randomTrue):line annotation_line.split()#------------------------------## 读取图像并转换成RGB图像#------------------------------#image Image.open(line[0])image image.convert(RGB)#------------------------------## 获得图像的高宽与目标高宽#------------------------------#iw, ih image.sizeh, w input_shape#------------------------------## 获得预测框#------------------------------#box np.array([np.array(list(map(int,box.split(,)))) for box in line[1:]])if not random:scale min(w/iw, h/ih)nw int(iw*scale)nh int(ih*scale)dx (w-nw)//2dy (h-nh)//2#---------------------------------## 将图像多余的部分加上灰条#---------------------------------#image image.resize((nw,nh), Image.BICUBIC)new_image Image.new(RGB, (w,h), (128,128,128))new_image.paste(image, (dx, dy))image_data np.array(new_image, np.float32)#---------------------------------## 对真实框进行调整#---------------------------------#if len(box)0:np.random.shuffle(box)box[:, [0,2]] box[:, [0,2]]*nw/iw dxbox[:, [1,3]] box[:, [1,3]]*nh/ih dybox[:, 0:2][box[:, 0:2]0] 0box[:, 2][box[:, 2]w] wbox[:, 3][box[:, 3]h] hbox_w box[:, 2] - box[:, 0]box_h box[:, 3] - box[:, 1]box box[np.logical_and(box_w1, box_h1)] # discard invalid boxreturn image_data, box#------------------------------------------## 对图像进行缩放并且进行长和宽的扭曲#------------------------------------------#new_ar iw/ih * rand(1-jitter,1jitter) / rand(1-jitter,1jitter)scale rand(.25, 2)if new_ar 1:nh int(scale*h)nw int(nh*new_ar)else:nw int(scale*w)nh int(nw/new_ar)image image.resize((nw,nh), Image.BICUBIC)#------------------------------------------## 将图像多余的部分加上灰条#------------------------------------------#dx int(rand(0, w-nw))dy int(rand(0, h-nh))new_image Image.new(RGB, (w,h), (128,128,128))new_image.paste(image, (dx, dy))image new_image#------------------------------------------## 翻转图像#------------------------------------------#flip rand().5if flip: image image.transpose(Image.FLIP_LEFT_RIGHT)image_data np.array(image, np.uint8)#---------------------------------## 对图像进行色域变换# 计算色域变换的参数#---------------------------------#r np.random.uniform(-1, 1, 3) * [hue, sat, val] 1#---------------------------------## 将图像转到HSV上#---------------------------------#hue, sat, val cv2.split(cv2.cvtColor(image_data, cv2.COLOR_RGB2HSV))dtype image_data.dtype#---------------------------------## 应用变换#---------------------------------#x np.arange(0, 256, dtyper.dtype)lut_hue ((x * r[0]) % 180).astype(dtype)lut_sat np.clip(x * r[1], 0, 255).astype(dtype)lut_val np.clip(x * r[2], 0, 255).astype(dtype)image_data cv2.merge((cv2.LUT(hue, lut_hue), cv2.LUT(sat, lut_sat), cv2.LUT(val, lut_val)))image_data cv2.cvtColor(image_data, cv2.COLOR_HSV2RGB)#---------------------------------## 对真实框进行调整#---------------------------------#if len(box)0:np.random.shuffle(box)box[:, [0,2]] box[:, [0,2]]*nw/iw dxbox[:, [1,3]] box[:, [1,3]]*nh/ih dyif flip: box[:, [0,2]] w - box[:, [2,0]]box[:, 0:2][box[:, 0:2]0] 0box[:, 2][box[:, 2]w] wbox[:, 3][box[:, 3]h] hbox_w box[:, 2] - box[:, 0]box_h box[:, 3] - box[:, 1]box box[np.logical_and(box_w1, box_h1)] return image_data, box调用代码 import os from random import sampleimport numpy as np from PIL import Image, ImageDrawfrom utils.random_data import get_random_data, get_random_data_with_MixUp from utils.utils import convert_annotation, get_classes#-----------------------------------------------------------------------------------# # Origin_VOCdevkit_path 原始数据集所在的路径 #-----------------------------------------------------------------------------------# Origin_VOCdevkit_path VOCdevkit_Origin #-----------------------------------------------------------------------------------# # input_shape 生成的图片大小。 #-----------------------------------------------------------------------------------# input_shape [640, 640]if __name__ __main__:Origin_JPEGImages_path os.path.join(Origin_VOCdevkit_path, VOC2007/JPEGImages)Origin_Annotations_path os.path.join(Origin_VOCdevkit_path, VOC2007/Annotations)#---------------------------## 遍历标签并赋值#---------------------------#xml_names os.listdir(Origin_Annotations_path)#------------------------------## 获取一个图像与标签#------------------------------#sample_xmls sample(xml_names, 1)unique_labels get_classes(sample_xmls, Origin_Annotations_path)jpg_name os.path.join(Origin_JPEGImages_path, os.path.splitext(sample_xmls[0])[0] .jpg)xml_name os.path.join(Origin_Annotations_path, sample_xmls[0])line convert_annotation(jpg_name, xml_name, unique_labels)#------------------------------## 各自数据增强#------------------------------#image_data, box_data get_random_data(line, input_shape) img Image.fromarray(image_data.astype(np.uint8))for j in range(len(box_data)):thickness 3left, top, right, bottom box_data[j][0:4]draw ImageDraw.Draw(img)for i in range(thickness):draw.rectangle([left i, top i, right - i, bottom - i],outline(255, 255, 255))img.show()
http://www.hkea.cn/news/14353331/

相关文章:

  • 江西省建设局网站企业网站建设的经验心得
  • 华侨城网站开发广东公司响应式网站建设设计
  • 化妆品网站建设实施方案wordpress淘宝客模板免费下载
  • 建站专业定制客户管理app
  • 中小企业电商网站建设的重要性wordpress电子邮件要用什么
  • 怎么样百度能搜到自己的网站网站开发培训合肥
  • 中邦建设工程有限公司网站网站建设公司名字
  • 购物网站源代码宣传软文是什么意思
  • 济宁网站建设公司最新报价厦门seo哪家强
  • 龙华网站建设yihekj租房网站建设
  • 网站开发用什么编程语言电商产品开发流程
  • 电子商务网站建设大作业济阳县做网站公司
  • 宝塔建站网址做同城网站需要哪些
  • 网站制作书籍推荐自适应网页设计尺寸
  • c 做网站教程百度官方网址
  • 网站加速器免费广州微网站建设价位
  • 嘉兴 做企业网站国外建设网站情况
  • 建设公司网站的会计分录金昌市住房和城乡建设局网站
  • 网站建设转正申请报告网页制作工具的类别及功能
  • 强军网网站建设如何做正版小说网站
  • 专门做三国战纪的网站叫什么意思科技开发公司
  • 网站建设多久可以学会wordpress 开启 gzip
  • 网站快速排名优化方法广州番禺区酒店
  • 巴中做网站免费flash网站模板
  • 一些网站只能在微信打开怎么做的网站怎么添加广告
  • 网站建设合同注意点郑州威盟网站建设公司怎么样
  • 河北住房和建设厅官方网站建设工程施工合同条例
  • 辽源网站seo城乡建设杂志官方网站
  • 东莞做网站seo优化龙岩网站建设设计服务
  • 怎么做qq网站电子商务网站建设感想