图像处理工具箱™和深度学习工具箱™提供了许多选项可从图像中清除噪声。最简单和最快的解决方案是使用内置预磨损的神经网络,称为DNCNN。然而,普试预定网络在识别的噪声类型中没有提供多大灵活性。有关更多灵活性,请使用预定义的图层培训您自己的网络,或培训完全定制的去噪神经网络。
您可以使用内置预制的DNCNN网络来删除高斯噪音,而不会培训网络的挑战。使用佩带的网络删除噪声具有以下限制:
噪声删除仅适用于2-D单通道图像。如果您有多个颜色通道,或者如果您使用三维图像,请通过单独处理每个通道或平面来消除噪声。例如,看到使用预制神经网络从彩色图像中清除噪声。
该网络仅识别高斯噪声,具有有限的标准偏差。
要加载预制的DNCNN网络,请使用denoisingnetwork
功能。然后,通过DNCNN网络和嘈杂的2-D单通道图像denoiseimage.
。该图像显示使用预制DNCNN网络来欺骗图像的工作流程。
您可以培训网络以检测从灰度图像的更大范围的高斯噪声标准偏差,从图像处理工具箱提供的内置图层开始。要使用预定义的图层培训去噪网络,请按照下列步骤操作。该图显示了深灰色框中的培训工作流程。
创建一个imageageAtastore.
存储原始图像的对象。
创建一个denoisingimageageataTastore.
从原始图像生成嘈杂培训数据的对象。要指定高斯噪声标准偏差的范围,请设置Gaussiannoiselevel.
财产。您必须使用默认值补丁
(50.
) 和ChannelFormat.
('灰度'
)因此训练数据的大小与网络的输入大小匹配。
使用预定义的去噪层使用dncnlayers.
功能。
使用培训选项定义培训选项
(深度学习工具箱)功能。
培训网络,指定去噪图像数据存储作为数据源Trainnetwork.
(深度学习工具箱)。对于训练的每次迭代,去噪图像数据存储通过随机裁剪原始图像来生成一个批量培训数据imageageAtastore.
,然后将随机生成的零均值高斯白噪声添加到每个图像补丁。添加噪声的标准偏差对于每个图像修补程序是唯一的,并且在指定的范围内具有值Gaussiannoiselevel.
denoising图像数据存储的属性。
培训网络后,通过网络和嘈杂的灰度图像denoiseimage.
。该图显示了浅灰色盒子中的去噪工作流程。
为了培训具有最大灵活性的去噪神经网络,您可以使用自定义数据存储来生成培训数据或定义自己的网络架构。例如,您可以:
在单通道图像中列车检测诸如非高斯噪声分布的诸如非高斯噪声分布的网络。您可以通过使用返回的图层来定义网络架构dncnlayers.
功能。要生成与此网络兼容的培训图像,请使用转换
和结合
用于批量噪声图像和相应的噪声信号。有关更多信息,请参阅深度学习的预处理图像(深度学习工具箱)。
使用DNCNN网络架构培训去噪网络后,可以使用denoiseimage.
删除图像噪声的功能。
小费
DNCNN网络还可以检测由其他类型的失真引起的高频图像伪像。例如,您可以培训DNCNN网络以增加图像分辨率或删除JPEG压缩伪像。这JPEG图像脱块使用深度学习示例显示如何培训DNCNN网络以删除JPEG压缩工件
列车检测彩色图像的一系列高斯噪声分布的网络。要为此网络生成培训图像,可以使用adenoisingimageageataTastore.
并设置了ChannelFormat.
财产'RGB'
。您必须定义支持RGB输入图像的自定义卷积神经网络架构。金宝app
使用自定义网络架构训练去噪网络后,可以使用激活
(深度学习工具箱)在扭曲图像中隔离噪声或高频伪像的功能。然后,从失真图像中减去噪声以获得去噪图像。
结合
|denoiseimage.
|denoisingimageageataTastore.
|denoisingnetwork
|dncnlayers.
|转换
|激活
(深度学习工具箱)|培训选项
(深度学习工具箱)|Trainnetwork.
(深度学习工具箱)