【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…...

基于uniapp+WebSocket实现聊天对话、消息监听、消息推送、聊天室等功能,多端兼容
基于 UniApp + WebSocket实现多端兼容的实时通讯系统,涵盖WebSocket连接建立、消息收发机制、多端兼容性配置、消息实时监听等功能,适配微信小程序、H5、Android、iOS等终端 目录 技术选型分析WebSocket协议优势UniApp跨平台特性WebSocket 基础实现连接管理消息收发连接…...
C++.OpenGL (10/64)基础光照(Basic Lighting)
基础光照(Basic Lighting) 冯氏光照模型(Phong Lighting Model) #mermaid-svg-GLdskXwWINxNGHso {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-GLdskXwWINxNGHso .error-icon{fill:#552222;}#mermaid-svg-GLd…...

使用 Streamlit 构建支持主流大模型与 Ollama 的轻量级统一平台
🎯 使用 Streamlit 构建支持主流大模型与 Ollama 的轻量级统一平台 📌 项目背景 随着大语言模型(LLM)的广泛应用,开发者常面临多个挑战: 各大模型(OpenAI、Claude、Gemini、Ollama)接口风格不统一;缺乏一个统一平台进行模型调用与测试;本地模型 Ollama 的集成与前…...
Pinocchio 库详解及其在足式机器人上的应用
Pinocchio 库详解及其在足式机器人上的应用 Pinocchio (Pinocchio is not only a nose) 是一个开源的 C 库,专门用于快速计算机器人模型的正向运动学、逆向运动学、雅可比矩阵、动力学和动力学导数。它主要关注效率和准确性,并提供了一个通用的框架&…...
省略号和可变参数模板
本文主要介绍如何展开可变参数的参数包 1.C语言的va_list展开可变参数 #include <iostream> #include <cstdarg>void printNumbers(int count, ...) {// 声明va_list类型的变量va_list args;// 使用va_start将可变参数写入变量argsva_start(args, count);for (in…...

基于PHP的连锁酒店管理系统
有需要请加文章底部Q哦 可远程调试 基于PHP的连锁酒店管理系统 一 介绍 连锁酒店管理系统基于原生PHP开发,数据库mysql,前端bootstrap。系统角色分为用户和管理员。 技术栈 phpmysqlbootstrapphpstudyvscode 二 功能 用户 1 注册/登录/注销 2 个人中…...
LCTF液晶可调谐滤波器在多光谱相机捕捉无人机目标检测中的作用
中达瑞和自2005年成立以来,一直在光谱成像领域深度钻研和发展,始终致力于研发高性能、高可靠性的光谱成像相机,为科研院校提供更优的产品和服务。在《低空背景下无人机目标的光谱特征研究及目标检测应用》这篇论文中提到中达瑞和 LCTF 作为多…...

Elastic 获得 AWS 教育 ISV 合作伙伴资质,进一步增强教育解决方案产品组合
作者:来自 Elastic Udayasimha Theepireddy (Uday), Brian Bergholm, Marianna Jonsdottir 通过搜索 AI 和云创新推动教育领域的数字化转型。 我们非常高兴地宣布,Elastic 已获得 AWS 教育 ISV 合作伙伴资质。这一重要认证表明,Elastic 作为 …...
es6+和css3新增的特性有哪些
一:ECMAScript 新特性(ES6) ES6 (2015) - 革命性更新 1,记住的方法,从一个方法里面用到了哪些技术 1,let /const块级作用域声明2,**默认参数**:函数参数可以设置默认值。3&#x…...

算法—栈系列
一:删除字符串中的所有相邻重复项 class Solution { public:string removeDuplicates(string s) {stack<char> st;for(int i 0; i < s.size(); i){char target s[i];if(!st.empty() && target st.top())st.pop();elsest.push(s[i]);}string ret…...