图像弹性形变

在视觉文档分析任务中,尤其是手写数字识别(如MNIST数据集),数据的分布具有一定的不变性(invariance)。例如,手写数字的形状可能会因为书写者的笔迹、手部肌肉的微小抖动等因素而发生变化。这些变化可以被视为一种弹性变形。通过在训练数据中引入类似的弹性变形,可以使神经网络更好地学习到这种不变性,从而提高模型的泛化能力。 弹性变形论文最早是由Patrice等人在2003年ICDAR上发表: Best Practices for Convolutional Neural Networks Applied to Visual Document Analysis

弹性形变的过程:

1️⃣随机生成位移场:首先生成随机的水平位移场 Δx(x,y) 和垂直位移场 Δy(x,y),其中每个像素的位移值是从均匀分布 [−1,+1] 中随机抽取的。

2️⃣平滑位移场:将生成的随机位移场与一个高斯核进行卷积,以平滑位移场。高斯核的标准差 σ 控制了变形的“弹性”程度:

  • 当 σ 很大时,位移场接近于仿射变换(affine transformation)。
  • 当 σ 很小时,位移场看起来更像随机噪声。
  • 中等的 σ 值会产生类似弹性变形的效果。

论文中给出了示意图:

在这里插入图片描述

左上角的6:原始图像。 其余的6:不同 σ 的位移场应用于原始图像后得到的结果图像,右上角的6的 σ 最小。

3️⃣调整变形强度 :将平滑后的位移场乘以一个缩放因子 α,以控制变形的强度。

4️⃣应用于原有图像 : 有以下步骤

  1. 对于每个像素,根据位移场计算其新的位置。
  2. 如果新的位置不在整数坐标上,需要通过插值(如双线性插值)来计算该位置的灰度值。例如,假设像素A的新位置是 (1.75,−0.5),则可以通过双线性插值计算出该位置的灰度值。

弹性形变可以提高神经网络在cv任务中的性能,不仅增加了训练数据的多样性,还帮助神经网络学习输入数据的不变性,提高模型的泛化能力。


参考文章:

https://zhuanlan.zhihu.com/p/342274228?utm_id=0

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

w1ndfly

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值