Python 我们如何真正清洁或预处理图像进行图像分类?

Python 我们如何真正清洁或预处理图像进行图像分类?,python,machine-learning,deep-learning,neural-network,conv-neural-network,Python,Machine Learning,Deep Learning,Neural Network,Conv Neural Network,我有一个简单的问题要问你们中的一些人。我做过一些图像分类教程。只有MNIST数据集这样的简单数据集。然后我注意到他们这样做 train_images = train_images / 255.0 现在我知道矩阵中的每个值(即图像)都被255.0除。如果我没记错的话,这叫做规范化,对吗?(如果我错了,请纠正我,否则告诉我我是对的) 我只是好奇是否有“更好的方式”、“另一种方式”或“最好的方式”来预处理或清理图像,然后这些清理后的图像将被送入网络进行培训 如果您想提供示例源代码,请。请请便。我想看

我有一个简单的问题要问你们中的一些人。我做过一些图像分类教程。只有MNIST数据集这样的简单数据集。然后我注意到他们这样做

train_images = train_images / 255.0
现在我知道矩阵中的每个值(即图像)都被255.0除。如果我没记错的话,这叫做规范化,对吗?(如果我错了,请纠正我,否则告诉我我是对的)

我只是好奇是否有“更好的方式”、“另一种方式”或“最好的方式”来预处理或清理图像,然后这些清理后的图像将被送入网络进行培训

如果您想提供示例源代码,请。请请便。我想看看代码示例


谢谢大家!

图像分类前的预处理图像可包括以下内容:

  • 正常化:你已经提到了
  • 重塑为统一分辨率(img高度x img宽度):更高的分辨率会导致更好的学习,更小的分辨率可能会丢失重要特征。有些模型有默认的输入大小,您可以参考。也可以使用所有图像的平均大小
  • 颜色通道:1表示灰度,3表示rgb刻度。根据您的应用程序,您可以设置此选项
  • 数据扩充:如果您的模型过拟合或数据集很小,您可以通过更改原始图像(翻转、旋转、裁剪、缩放…)来复制数据集,以增加数据集
  • 图像分割:可以执行分割以突出显示可能有利于应用程序的区域或边界。例如,在医学图像分类中,为了提高分类性能,可能会对人体的某些部位进行遮罩

例如,我最近研究了肺部CT扫描图像的图像分类。为了进行预处理,我对图像进行了重塑,并使其具有灰度。然后我进行了图像分割以突出显示图像中的肺部。我对图像像素进行了标准化,将其放入分类模型中。根据您的应用程序,您可能需要考虑其他更多的预处理技术。

我认为没有“最佳”的方式。这完全取决于你试图解决的问题。据我所知,标准化的原因是为了防止数字过快膨胀。预处理取决于您处理的数据类型,在图像的情况下,我们通常进行标准化。但在某些情况下,您需要裁剪图像或更改其颜色空间。在医学成像中,在输入模型之前,我们需要做一些额外的工作。非常感谢!你的答案很好!非常感谢。它给了我更多关于它的信息谢谢你的回答!我不知道为什么有些人不喜欢我的问题,但我的问题对我来说真的很重要,我想人们可能也有同样的问题。我很快就要进行深度学习了,我刚做完一些东西就准备好了。非常感谢!你的答案是最好的!我会检查的,但让我们等待其他人的回答。我喜欢从人们那里了解更多。再次感谢你德怀特,嗯,我可以问你戴面具是什么意思吗?图像的某些部分可能被遮住了?像素是否可以以某种方式增强?我很高兴我的答案有帮助。:)我所说的蒙版图像是指将背景像素设为零,而将肺部像素设为非零。这将只显示肺部像素,其余部分变为黑色。这将显示隐藏的肺部CT扫描图像的样子。这允许模型只学习肺部的特征,而不是背景,因此提高了模型的性能。。。再次感谢你!