【ML】Image Augmentation)的作用、使用方法及其分类
图像增强(Image Augmentation)的作用、使用方法及其分类
- 1. 图像增强的定义
- 2. 图像增强的作用
- 3. 什么时候使用图像增强?
- 4. 图像增强详细方法分类梳理
- 4.1 图像增强方法列表
- 4.2 边界框增强方法
- 5. 参考资料
- yolov3(一:模型训练)
- yolov3(二:车牌识别)
- yolov3(四:车牌识别及算法解析)
1. 图像增强的定义
图像增强(Image Augmentation)是一种技术,它通过对原始图像进行各种变换或操作,生成新的图像数据。这些变换包括旋转、翻转、裁剪、调节亮度、添加噪声等。图像增强主要用于扩充训练数据集,以提高机器学习模型的鲁棒性和泛化能力。
2. 图像增强的作用
-
扩充数据集:在数据有限的情况下,图像增强可以人为增加数据量,生成更多的训练样本,从而避免模型过拟合。
-
提高模型鲁棒性:通过对图像进行不同形式的变换,可以让模型学习到更具多样性的特征,从而提高模型在面对未知数据时的表现。例如,旋转、翻转可以让模型更好地应对不同的视角变化。
-
模拟真实场景:图像增强技术可以模拟现实世界中可能出现的各种情况,如光照变化、噪声干扰、模糊等,增强模型的实用性。
-
防止过拟合:在训练模型时,过拟合是一个常见问题,特别是在数据集较小的情况下。通过图像增强,可以有效地降低模型对特定样本的依赖性,提升模型的泛化能力。
3. 什么时候使用图像增强?
-
数据集较小:当训练数据不足时,图像增强是扩充数据量的有效方法。
-
模型过拟合:如果模型在训练集上表现很好,但在验证集或测试集上表现较差,图像增强可以帮助缓解过拟合问题。
-
多样性不足:当数据集中的样本具有较大相似性,或缺乏不同环境、不同条件下的样本时,图像增强可以增加数据的多样性。
-
应用场景复杂:当模型应用于复杂或多变的场景时,通过图像增强可以提前模拟这些变化,提高模型的适应能力。
总的来说,图像增强是提升模型性能的重要手段,特别是在数据有限或需要面对复杂场景时尤为有用。

4. 图像增强详细方法分类梳理
4.1 图像增强方法列表
| 增强方法 | 详细说明 | 特点 |
|---|---|---|
| Flip | 将图像水平翻转或垂直翻转,使图像左右或上下颠倒。 | 对称性增强,避免模型依赖方向信息。 |
| 90° Rotate | 将图像按90度、180度或270度旋转。 | 增强模型对不同旋转角度的鲁棒性。 |
| Crop | 裁剪图像的某一部分以生成一个新的子图像。 | 关注特定区域,防止模型对背景信息的依赖。 |
| Rotation | 任意角度旋转图像而不是90度的倍数。 | 提供多样化的视角,增强模型对不同角度的适应性。 |
| Shear | 对图像进行倾斜变换,将图像的形状进行拉伸或扭曲。 | 增强模型对几何变形的鲁棒性。 |
| Grayscale | 将图像转换为灰度图像,仅保留亮度信息。 | 去除颜色信息,关注亮度和形状特征。 |
| Hue | 改变图像的色调,调整图像的整体颜色。 | 模拟不同的光照条件,增强模型对颜色变化的适应性。 |
| Saturation | 调整图像的饱和度,使颜色更加鲜艳或更加黯淡。 | 增强模型对颜色强度变化的鲁棒性。 |
| Exposure | 调整图像的曝光度,使图像变得更亮或更暗。 | 增强模型对不同光照条件的适应性。 |
| Blur | 对图像应用模糊滤镜,降低图像的清晰度。 | 模拟相机对焦不准确的情况,增强模型的鲁棒性。 |
| Noise | 向图像中添加随机噪声,如高斯噪声或椒盐噪声。 | 增强模型对噪声的鲁棒性,模拟传感器噪声或压缩失真。 |
| Cutout | 在图像上随机遮挡一个或多个区域,用纯黑色或其他颜色填充遮挡区域。 | 使模型更关注整体特征,避免过度依赖某一特定区域。 |
| Mosaic | 将多个图像组合在一起生成一个新图像,通常将图像分成不同的区域,然后重新排列。 | 提供更多样的训练样本,增加模型的泛化能力。 |
4.2 边界框增强方法
| 增强方法 | 详细说明 | 特点 |
|---|---|---|
| Flip | 对图像中的边界框进行水平或垂直翻转。 | 保持目标物体的定位不变,但方向改变。 |
| 90° Rotate | 将包含边界框的图像旋转90度。 | 增强模型对不同旋转角度的目标检测能力。 |
| Crop | 裁剪图像和相应的边界框。 | 可以生成更加局部的检测目标,防止模型依赖背景信息。 |
| Rotation | 任意角度旋转图像中的目标和边界框。 | 增加检测目标的多样性和角度变化的适应性。 |
| Shear | 对图像及其边界框进行剪切变换。 | 提供对变形目标的检测能力,增强模型的几何鲁棒性。 |
| Brightness | 调整图像的亮度,同时对边界框不产生影响。 | 增强模型在不同光照条件下的目标检测能力。 |
| Exposure | 调整图像的曝光度,处理高曝光或低曝光图像中的目标检测。 | 增强模型对不同曝光条件的目标检测能力。 |
| Blur | 对图像进行模糊处理,目标仍然被边界框标记。 | 模拟相机对焦不准的情况,增强模型的鲁棒性。 |
| Noise | 向图像中添加随机噪声,仍保持边界框标注的准确性。 | 增强模型在噪声环境下的目标检测能力。 |
这些增强方法有助于在图像分类、目标检测等任务中生成更多样化的训练样本,增强模型的鲁棒性和泛化能力。
5. 参考资料
- Introducing Bounding Box Level Augmentations
相关文章:
【ML】Image Augmentation)的作用、使用方法及其分类
图像增强(Image Augmentation)的作用、使用方法及其分类 1. 图像增强的定义2. 图像增强的作用3. 什么时候使用图像增强?4. 图像增强详细方法分类梳理4.1 图像增强方法列表4.2 边界框增强方法5. 参考资料 yolov3(一:模型…...
设计模式六大原则(一)--单一职责原则
1. 简介 1.1. 概述 一个类或模块应该只负责完成一项任务或承担一个责任。如果一个类或模块承担了多个职责,那么当需要修改其中一个职责的功能时,就可能会对其他职责产生影响,从而导致代码耦合度增加,维护起来更加困难。 1.2. 主要特点 单一职责原则(Single Responsibi…...
c语言学习,malloc()函数分析
1:malloc() 函数说明: 申请配置size大小内存空间 2:函数原型: void *malloc(size_t size) 3:函数参数: 参数size,为申请内存大小 4:返回值: 配置成功则返回指针&#…...
【运维项目经历|041】上云项目-物理机迁移到阿里云
🍁博主简介: 🏅云计算领域优质创作者 🏅2022年CSDN新星计划python赛道第一名 🏅2022年CSDN原力计划优质作者 🏅阿里云ACE认证高级工程师 🏅阿里云开发者社区专家博主 💊交流社区:CSDN云计算交流社区欢迎您的加入! 目录 项目名称 项目背景 项目目标 项…...
分组并合并其它列的非空值 --Excel难题#83
Excel第1列是分类,第2-42列是平行的多个数据项列,下表用部分列示例。数据有X或null两种情况,同一个分类的同一列数据偶尔有重复。 ABCDE1IDCriteria1Criteria2Criteria3Criteria42FirstValueX3FirstValueX4FirstValueX5FirstValueX6SecondVa…...
VM相关配置及docker
NAT——VMnet8网卡 桥接——WLAN/网线 仅主机——VMnet1网卡 docker与虚拟机的区别 启动docker服务 systemctl start docker 重启 systemctl start docker关闭docker服务 systemctl stop docker.servicedocker的两大概念 镜像:images,应用程序的静态文…...
Redis中Set数据类型常用命令
目录 1. 添加元素 2. 移除元素 3. 检查成员是否存在 4. 获取集合成员 5. 获取集合成员数量 6. 随机获取集合中的一个成员 7. 集合运算 8. 集合的移值 9. 提供集合的随机元素 在Redis中,Set是一种无序且不重复的字符串集合。 1. 添加元素 SADD key member [member ..…...
mysql误删数据恢复记录
背景 1、数据库版本 5.7.36,由于误操作删掉了表的所有数据,但是数据库备份每天凌晨进行、只能从备份恢复昨日的全量数据,当日的数据将会丢失 查看binlog配置 binlog配置 [mysqld] #设置日志三种格式:STATEMENT、ROW、MIXED 。 bi…...
论文阅读:Real-time Controllable Denoising for Image and Video
这篇文章是 CVPR 2023 的一篇文章,探讨了在图像与视频降噪中,如何实时控制降噪强度的问题。 Abstract 图像或者视频降噪,是在细节与平滑度之间的一个微妙的平衡,因为噪声与细节都属于高频信息,降噪在去除噪声的同时&…...
【Kubernetes】虚拟 IP 与 Service 的代理模式
虚拟 IP 与 Service 的代理模式 1.userspace 代理模式2.iptables 代理模式3.IPVS 代理模式 由于 Service 的默认发布类型是 ClusterlP,因此也可以把 ClusterIP 地址叫作 虚拟 IP 地址。在 Kubernetes 创建 Service 时,每个节点上运行的 kube-proxy 会自动…...
深度学习·Pytorch
以下代码源自李沐 自定义模块类 继承module类 继承nn.Module重写构造函数前向传播 class MLP(nn.Module):# 用模型参数声明层。这里,我们声明两个全连接的层def __init__(self):# 调用MLP的父类Module的构造函数来执行必要的初始化。# 这样,在类实例…...
fastzdp_sqlmodel新增get_first和is_exitsts方法
说明 经过fastzdp_login的整合,我们发现,fastzdp_sqlmodel还可以继续封装两个便捷的方法。 get_first:获取查询结果集中的第一条数据is_exitsts:判断数据是否已存在 封装get_first方法 def get_first(engine, model, query_di…...
嵌入式软件--数电基础 DAY 3
一、二进制 (1)文字表述 二进制数只能取0,1两个数字,逢二进一。 通过二进制表达文字。如战争时代的电报。 通过电灯泡的亮灭传递出信息。可以对灯亮和灯灭富裕一些含义,就能传达出想要的消息。 这就是编码和解码两…...
【生成式人工智能-十五-经典的影像生成方法-GAN】
经典的影像生成方法-GAN GANDiscriminatorGenerator还需要加入额外信息么 GAN可以加在其他模型上面我们可以用影像生成模型做什么? 前面讲过VAE和Flow-based以及diffusion Model ,今天讲最后一种经典的生成方法GAN。 GAN 前面讲的几种模型都是用加入额外…...
python 已知x+y=8 求x*y*(x-y)的最大值
先用导数求解 已知xy8 求xy(x-y)的最大值 令y8-x 则 f(x)x⋅(8−x)⋅(x−(8−x))x⋅(8−x)⋅(2x−8) 导数方程为 f(x)-3x^2 24x - 32 求方程 − 3 x 2 24 x − 32 0 -3x^2 24x - 32 0 −3x224x−320 的根。 首先,我们可以尝试对方程进行因式分解。观察…...
windows平台的postgresql主从数据库流备份
主: 操作系统:windows10 数据库版本:postgresql-16.2 ip:192.168.3.254 从: 操作系统:windows10 数据库版本:postgresql-16.2 ip:192.168.3.253 配置主库 配置 pg_hba.conf 文件 在 pg 的安装目录下,找到 …...
Spring 常见设计模式
什么是设计模式? 设计模式(Design pattern)是为解决软件设计中通用问题而被提出的一套指导性思想。它是一种被反复验证、经过实践证明并被广泛应用的代码设计经验和思想总结,可以帮助开发者通过一定的模式来快速的开发高质量、可维…...
优化大量数据导出到Excel的内存消耗(二):如果数据超出Excel单表上限,则进行分表
优化前:优化大量数据导出到Excel的内存消耗_大文件异步导出 内存占用高-CSDN博客 写Excel文件报错:Invalid row number (1048576) outside allowable range (0..1048575) 写入Excel时遇到IllegalArgumentException,原因是超出允许的最大行数…...
rustrover打开会报Error: Invalid toolchain
如果 cargo --version 正常输出,但在使用 RustRover 时出现“Invalid toolchain”错误,可能是由于 RustRover 工具链配置有问题或路径指向错误。 解决步骤: 1. 检查 RustRover 的工具链配置 打开 RustRover,进入 Preferences 或…...
docker-compose 安装canal
创建 Canal 配置文件 /conf/canal.properties mkdir -p conf/ touch /conf/canal.properties # canal.properties# tcp bind ip canal.ip 0.0.0.0 canal.port 11111 canal.metrics.pull.port 11112# zookeeper 集群配置 canal.zkServers canal.zookeeper.sessionTimeout…...
OpenClaw+Qwen3-32B低成本方案:RTX4090D镜像长任务稳定性实测
OpenClawQwen3-32B低成本方案:RTX4090D镜像长任务稳定性实测 1. 为什么需要测试长任务稳定性? 上周我遇到一个头疼的问题:用OpenClaw整理3年积累的摄影素材时,任务执行到2小时突然中断。检查日志发现是显存溢出导致模型服务崩溃…...
AEB紧急制动系统与carsim及simulink联仿技术:卓越效果与性能的完美结合
紧急制动系统AEB,carsim与simulink联仿,效果极好 ,踩下刹车的那一刻,方向盘突然传来剧烈震动。盯着屏幕里那辆虚拟的前车尾灯,我手心全是汗——这已经是今天第三次测试紧急制动了。Carsim里那台SUV正以60km/h的速度冲向…...
基于 Kinova Gen3 机械臂的家庭人机交互安全算法研究
随着服务机器人逐步进入家庭场景,人机交互(HRI)的安全性成为影响机器人普及的关键因素。相较于工业环境,家庭空间布局多变、人员活动随机,对机械臂的感知、规划与控制提出了更高要求。本文以7自由度Kinova Gen3机械臂为…...
PECVD vs 磁控溅射:氮化硅薄膜制备工艺全解析(附击穿场强测试数据)
PECVD与磁控溅射:氮化硅薄膜工艺的深度博弈与性能优化 在半导体器件制造和MEMS传感器领域,氮化硅薄膜作为关键功能材料,其介电性能和结构特性直接影响器件可靠性。当前工业界主要采用等离子体增强化学气相沉积(PECVD)和…...
Xcode打包上传App Store Connect失败?可能是这些配置没做好(含解决方案)
Xcode打包上传App Store Connect失败排查指南:从配置到解决方案 每次提交应用上架都是iOS开发者必经的考验,而Xcode打包上传过程中遇到的"无效二进制文件"错误堪称拦路虎。这种错误往往不会给出明确提示,而是通过邮件通知或在App S…...
精益生产方式的核心功能拆解:精益生产方式如何解决多品种小批量场景下的库存积压难题
在当前制造业从“少品种大批量”向“多品种小批量”急剧转型的背景下,精益生产方式已成为企业打破库存僵局的唯一出路,它通过准时化拉动和消除浪费的核心逻辑,精准解决了传统模式下因预测失效导致的严重库存积压问题;面对多变的订…...
一只菜鸟学深度学习的日记:填充 步幅 下采样
陕访惹玫在前两篇文章《最小二乘问题详解10:PnP问题求解》和《最小二乘问题详解11:基于李代数的PnP优化》中,我们分别通过常规思想与李代数思想,深入探讨了计算机视觉中 SFM(Structure from Motion)系统的核…...
Markdown Viewer 突破限制:全新自定义主题功能释放创作潜能
Markdown Viewer 突破限制:全新自定义主题功能释放创作潜能 【免费下载链接】markdown-viewer Markdown Viewer / Browser Extension 项目地址: https://gitcode.com/gh_mirrors/ma/markdown-viewer 副标题:如何通过自定义主题功能实现文档视觉体…...
从数据包到DMA:图解GMAC传输描述符的完整生命周期(含TSO/VLAN案例)
从数据包到DMA:图解GMAC传输描述符的完整生命周期(含TSO/VLAN案例) 在网络硬件加速领域,GMAC(Gigabit Media Access Control)接口的传输描述符机制是提升数据吞吐效率的核心技术之一。本文将深入剖析一个网…...
DeepFaceLab 512分辨率遮罩模型实战:如何精准处理头发和手部细节(附下载)
DeepFaceLab 512分辨率遮罩模型实战:如何精准处理头发和手部细节 在数字内容创作领域,视频换脸技术已经从简单的娱乐工具逐渐演变为影视特效、虚拟偶像制作等专业场景的核心技术。对于DeepFaceLab的中高级用户来说,如何突破基础换脸的局限&am…...
