深度学习 – 如何进行随机裁剪而不丢失数据中的任何信息(更改真实标签)

我有来自DDSM乳房X光摄影的图像块,大小为150x150。我想通过随机裁剪这些图像2次至120x120大小来扩充我的数据集。因此,如果我的数据集包含6500张图像,通过随机裁剪扩充后应该得到13000张图像。问题是,我不希望丢失图像中的潜在信息,并且可能改变真实标签。

这样做的最佳方法是什么?我应该从150x150随机裁剪到120x120并希望结果最好,还是先填充它们然后进行裁剪?解决这个问题的标准方法是什么?


回答:

如果你的真实标签包含你试图分类的确切位置,请使用真实标签以有根据的方式裁剪你的图像。即,如果你移除了你试图分类的内容,请调整真实标签。

如果你不知道你正在分类的内容的位置,你可以

  1. 尝试在未增强的数据集上训练一个分类器,
  2. 找出你的分类器对图像的哪些区域有反应,
  3. 记录这些位置
  4. 以有根据的方式裁剪你的图像
  5. 训练一个新的分类器

但是,你如何“找出你的分类器对哪些区域有反应”?Zeiler和Fergus在《Visualizing and Understanding Convolutional Networks》中描述了多种方法:

Zeiler等人通过遮挡进行的可视化。想象你的分类器分类为乳腺癌无乳腺癌。现在只需拿一张包含乳腺癌阳性信息的图像,用某种空白颜色遮挡图像的一部分(见上图中的灰色方块,Zeiler等人的图像),并预测癌症。现在移动遮挡的方块。最终,你将获得原始图像所有部分的粗略预测分数(见上图中的(d)),因为当你遮盖了负责阳性预测的重要部分时,你(应该)得到一个阴性癌症预测。

如果你有能够在图像中真正识别癌症的人,这也是检查并防范混杂因素的好方法。

顺便说一句:你可能想要即时裁剪并随机化裁剪方式,以生成更多的样本。

如果150x150已经是感兴趣区域(ROI),你可以尝试以下数据增强方法:

  • 使用一个更大的图像块,例如170x170,它总是包含你的150x150图像块
  • 使用一个更大的图像块,例如200x200,并将其缩小到150x150
  • 向图像添加一些高斯噪声
  • 稍微旋转图像(随机角度)
  • 稍微改变图像对比度
  • 人为模拟你在原始数据集中看到的其他(图像)效果

Related Posts

使用LSTM在Python中预测未来值

这段代码可以预测指定股票的当前日期之前的值,但不能预测…

如何在gensim的word2vec模型中查找双词组的相似性

我有一个word2vec模型,假设我使用的是googl…

dask_xgboost.predict 可以工作但无法显示 – 数据必须是一维的

我试图使用 XGBoost 创建模型。 看起来我成功地…

ML Tuning – Cross Validation in Spark

我在https://spark.apache.org/…

如何在React JS中使用fetch从REST API获取预测

我正在开发一个应用程序,其中Flask REST AP…

如何分析ML.NET中多类分类预测得分数组?

我在ML.NET中创建了一个多类分类项目。该项目可以对…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注