1.一种基于密集型网络的生成式对抗神经网络,其特征在于,该网络是由密集型生成器、判别器1、判别器2和网络优化控制器共同构成;所述的密集型生成器含有一个输入和一个输出,所述的输出可以作为所述的判别器1的输入;所述的判别器1含有一个输入和一个输出,所述的输出可以作为所述的网络优化控制器的输入;所述的判别器2含有一个输入和一个输出,所述的输出可以作为所述的网络优化控制器的输入;所述的网络优化控制器含有两个输入和多个隐式输出,其根据所获得的输入进行计算,依据计算结果进行隐式输出对所述的生成式对抗神经网络模型的卷积核的构建参数进行优化;所述的密集型生成器的输出连接着所述的判别器1的输入,所述的判别器1的输出连接着所述的网络优化控制器的输入,所述的判别器2的输出连接着所述的网络优化控制器的另一个输入;
所述的密集型生成器由填充层A、卷积层A1、实例归一化层1、Relu激活函数层、下采样层、卷积层AA1、运算层1、卷积层AA2、运算层2、卷积层AA3、运算层3、上采样层、填充层A、卷积层A2、双曲正切函数层、运算层4和压缩层依次串联构成;所述的下采样层是由下采样层B1和下采样层B2依次串联构成,所述的下采样层B1由卷积层B1、实例归一化层1和Relu激活函数层依次串联构成,所述的下采样层B2由卷积层B2、实例归一化层1和Relu激活函数层依次串联构成;所述的卷积层AA1、卷积层AA2和卷积层AA3均是由6个串联的残差层、填充层B和卷积层C依次串联构成,所述的残差层由填充层B、卷积层C、实例归一化层2、Relu激活函数层、填充层B、卷积层C、实例归一化层3和运算层5依次串联构成,所述的运算层5实现的是所述的残差层的输入与所述的实例归一化层3的输出之间的求和运算,所述的求和运算采用了add算法;所述的实例归一化层1、实例归一化层2和实例归一化层3具有完全相同的结构和功能;所述的运算层1实现的是所述的下采样层的输出与所述的卷积层AA1的输出之间的求和运算,所述的求和运算采用了add算法;所述的运算层2实现的是所述的运算层1的输出与所述的卷积层AA2的输出之间的求和运算,所述的求和求和运算采用了add算法;所述的运算层3实现的是所述的运算层2的输出与所述的卷积层AA3的输出之间的求和运算,所述的求和运算采用了add算法;所述的上采样层是由上采样层A1和上采样层A2依次串联构成,所述的上采样层A1是由转置卷积层A1、实例归一化层1和Relu激活函数层依次串联构成,所述的上采样层A2是由转置卷积层A2、实例归一化层1和Relu激活函数层依次串联构成;所述的运算层4实现的是所述的双曲正切函数层的输出与所述的密集型生成器的输入之间的求和运算,所述的求和运算采用了add算法;
所述的判别器1和判别器2具有完全相同的结构和功能,其均由卷积层D1、实例归一化层
1、Leaky relu激活函数层、卷积层D2、实例归一化层1、Leaky relu激活函数层、卷积层D3、实例归一化层1、Leaky relu激活函数层、卷积层D4、实例归一化层1、Leaky relu激活函数层、卷积层E1、实例归一化层1、Leaky relu激活函数层、卷积层E2和Sigmoid激活函数层依次串联构成;
所述的网络优化控制器由损失函数和优化器构成;所述的损失函数为:
式中的S为清晰图像,D为判别器1或判别器2,N为清晰图像和失真图像的组数,G为密集型生成器, 为在VGG-19网络中的第i个最大层数之前的第j个卷积在激活之后所获得的特征图,Wi,j和Hi,j为特征图的维度,M为失真图像,a和b为像素的位置,λ为损失函数权重参数;所述的优化器根据所述的损失函数的值L进行优化,采用的优化规则为使所述的生成式对抗神经网络模型的所有神经元的梯度整体下降收敛;
所述的填充层A、填充层B的构建参数包括填充大小、填充方式和填充方法,实现对其输入的数据尺寸的扩展;
所述的卷积层A1、卷积层B1、卷积层B2、卷积层C、卷积层A2、卷积层D1、卷积层D2、卷积层D3、卷积层D4、卷积层E1和卷积层E2,具有完全相同的结构,所述的结构的构建参数包括卷积核的数量、卷积核的大小、卷积核的步长、卷积核的填充方式、卷积核的偏置项以及卷积核的初始值;所述的上述11个卷积层的功能是实现对其输入的特征图的提取;所述的上述11个卷积层的输出形式为卷积操作与偏置项的求和;所述的上述11个卷积层的差别体现在具有不同的“卷积核的数量”、“卷积核的大小”、“卷积核的步长”、“卷积核的填充方式”结构参数;
所述的实例归一化层1、实例归一化层2、实例归一化层3的结构和功能完全相同,用来将其输入的数据调整到特定的范围;
所述的转置卷积层A1、转置卷积层A2,具有完全相同的结构,所述的结构的构建参数包括转置卷积核的数量、转置卷积核的大小、转置卷积核的步长、转置卷积核的填充方式、转置卷积核的初始值;所述的转置卷积层A1、转置卷积层A2,功能是执行转置卷积操作,用来调整输入的数据尺寸;所述的转置卷积层A2的转置卷积核的初始值的设置与所述的转置卷积层A1的转置卷积核的初始值的设置相同;所述的转置卷积层A1、转置卷积层A2的输出形式为其执行的转置卷积操作的输出;
所述的Relu激活函数层的构建,采用了修正线性单元激活函数进行处理;所述的Leaky relu激活函数层的构建,采用了带泄露修正线性单元函数进行激活处理;所述的Sigmoid激活函数层的构建,采用了Sigmoid激活函数进行激活处理;所述的双曲正切函数层的构建,采用了双曲正切函数进行激活处理;所述的压缩层是将输入进行压缩,压缩后的值的范围在(-1,1)区间。
2.根据权利要求1所述的一种基于密集型网络的生成式对抗神经网络,其特征在于,所述的生成式对抗神经网络是基于tensorflow深度学习框架构建的;
所述的生成式对抗神经网络中的填充层A的填充方法采用pad方法,填充大小为3,填充方式为REFLECT;所述的生成式对抗神经网络中的填充层B的填充方法采用pad方法,填充大小为1,填充方式为REFLECT;所述的生成式对抗神经网络中的网络优化控制器内的优化器采用了train.AdamOptimizer算法,所述的算法的学习率参数为0.0001;
所述的生成式对抗神经网络中所述的11个卷积层的卷积核的填充方式从“SAME”或“VALID”中选取;所述的卷积核的初始值为标准差等于0.01的标准正态分布,所述的初始值的生成方式采用random_normal_initi-alizer算法;所述的卷积核的偏置项的初始值为0,所述的初始值的生成方式采用zeros_initializer算法;所述的生成式对抗神经网络中所述的11个卷积层的输出形式为卷积操作与偏置项的求和,所述的卷积操作的卷积算法采用nn.conv2d算法;所述的生成式对抗神经网络中所述的11个卷积层的输出形式为卷积操作与偏置项的求和,所述的求和采用了add算法;所述的生成式对抗神经网络中的卷积层A1的构建参数为卷积核的大小为7*7、卷积核的步长为[1,1,1,1]、卷积核的填充方式为“VALID”、卷积核的数量为64;所述的生成式对抗神经网络中的卷积层B1的构建参数为卷积核的大小为3*3、卷积核的步长为[1,2,2,1]、卷积核的填充方式为“SAME”、卷积核的数量为
128;所述的生成式对抗神经网络中的卷积层B2的构建参数为卷积核的大小为3*3、卷积核的步长为[1,2,2,1]、卷积核的填充方式为“SAME”、卷积核的数量为256;所述的生成式对抗神经网络中的卷积层C的构建参数为卷积核的大小为3*3、卷积核的步长为[1,1,1,1]、卷积核的填充方式为“VALID”、卷积核的数量为256;所述的生成式对抗神经网络中的卷积层A2的构建参数为卷积核的大小为7*7、卷积核的步长为[1,1,1,1]、卷积核的填充方式为“VALID”、卷积核的数量为3;所述的生成式对抗神经网络中的卷积层D1的构建参数为卷积核的大小为4*4、卷积核的步长为[1,2,2,1]、卷积核的填充方式为“SAME”、卷积核的数量为
64;所述的生成式对抗神经网络中的卷积层D2的构建参数为卷积核的大小为4*4、卷积核的步长为[1,2,2,1]、卷积核的填充方式为“SAME”、卷积核的数量为128;所述的生成式对抗神经网络中的卷积层D3的构建参数为卷积核的大小为4*4、卷积核的步长为[1,2,2,1]、卷积核的填充方式为“SAME”、卷积核的数量为256;所述的生成式对抗神经网络中的卷积层D4的构建参数为卷积核的大小为4*4、卷积核的步长为[1,2,2,1]、卷积核的填充方式为“SAME”、卷积核的数量为512;所述的生成式对抗神经网络中的卷积层E1的构建参数为卷积核的大小为4*4、卷积核的步长为[1,1,1,1]、卷积核的填充方式为“SAME”、卷积核的数量为512;所述的生成式对抗神经网络中的卷积层E2的构建参数为卷积核的大小为4*4、卷积核的步长为[1,1,1,1]、卷积核的填充方式为“SAME”、卷积核的数量为1;所述的生成式对抗神经网络中的实例归一化层1、实例归一化层2、实例归一化层3的构建,均首先使用nn.moments算法计算其输入x的均值E和方差D,然后计算其输出b,b=(x-E)/[(D+0.001)0.5];
所述的生成式对抗神经网络中的转置卷积层A1、转置卷积层A2的转置卷积核的填充方式从“SAME”或“VALID”中选取;所述的生成式对抗神经网络中的转置卷积层A1、转置卷积层A2的转置卷积核的初始值采用标准差 的标准正态分布,a、b和c分别为所述的转置卷积核的长、宽和数量,所述的初始值的生成方式采用了random_normal_initializer算法;所述的生成式对抗神经网络中的转置卷积层A1、转置卷积层A2的转置卷积操作采用了nn.conv2d_transpose算法;所述的生成式对抗神经网络中的转置卷积层A1的转置卷积核的大小为3*3,转置卷积核的步长为[1,2,2,1],转置卷积核的填充方式为“SAME”,转置卷积核的数量为128;所述的生成式对抗神经网络中的转置卷积层A2的转置卷积核的大小为3*3,转置卷积核的步长为[1,2,2,1],转置卷积核的填充方式为“SAME”,转置卷积核的数量为64;
所述的生成式对抗神经网络中的Relu激活函数层,采用的激活算法是nn.relu算法;所述的生成式对抗神经网络中的Leaky relu激活函数层,采用的激活算法是nn.leaky_relu算法;所述的生成式对抗神经网络中的Sigmoid激活函数层,采用的激活算法是nn.sigmoid算法;所述的生成式对抗神经网络中的双曲正切函数层,采用的激活算法是nn.tanh算法;
所述的生成式对抗神经网络中的压缩层,采用的压缩算法是clip_by_value算法。
3.一种基于密集型网络的生成式对抗神经网络的失真图像复原方法,其特征在于,包含如下步骤:
步骤1:构建所述的生成式对抗神经网络的图像数据训练集A,其中的失真图像和清晰图像一一对应,所述的清晰图像与所述的失真图像的长宽像素尺寸、图像个数、图像类型等完全相同;
步骤2:对所述的图像数据训练集中的所有图像进行随机裁切处理,裁切后所得到图像的长宽像素尺寸要小于原始图像的相应尺寸;
步骤3:对裁切后得到的图像数据训练集中的每一组清晰图像和失真图像,进行“逆时针旋转90度”、“左右方向翻转”、“上下方向翻转”、“左右方向翻转后逆时针旋转90度”、“上下方向翻转后逆时针旋转90度”中的随机的一种图像处理操作,得到处理后的图像数据训练集B,所述的图像训练集中的清晰图像和失真图像是一一对应的;
步骤4:将步骤3所述的图像数据训练集B中的一幅失真图像MM-1,输入到权利要求1所述的密集型生成器中,得到所述的密集型生成器的输出C,再将所述的输出C输入到权利要求1所述的判别器1中,得到所述的判别器1的输出D-1;
步骤5:将步骤3所述的图像数据训练集B中的与失真图像MM-1相对应的清晰图像MM-2,输入到权利要求1所述的判别器2中,得到所述的判别器2的输出D-2;
步骤6:将步骤4所述的输出D-1和步骤5所述的输出D-2,输入到权利要求1所述的网络优化控制器中,所述的网络优化控制器根据输入对所述的生成式对抗神经网络进行优化,实现对步骤3所述的图像数据训练集B的一组对应图像的训练;
步骤7:重复步骤2-6,实现步骤3所述的图像数据训练集B内的所有对应图像的训练,此时完成对所述的生成式对抗神经网络的一次训练,训练的结果保存在所述的生成式对抗神经网络内;
步骤8:重复步骤7,对所述的生成式对抗神经网络进行多次训练,获得可用于失真图像复原的生成式对抗神经网络模型DD;
步骤9:将需要进行处理的失真图像,输入到步骤8所述的生成式对抗神经网络模型DD的密集型生成器,就可以由所述的生成式对抗神经网络模型DD的密集型生成器的输出得到的处理后的清晰复原图像。
4.根据权利要求3所述的一种基于密集型网络的生成式对抗神经网络的失真图像复原方法,其特征在于,所述的步骤1,优选的,采用Python语言Python Imaging Library库中三次样条差值BICUBIC方法将所有的清晰图像和失真图像的长宽像素尺寸调整为640*360;所述的步骤2,优选的,裁切后的图像的长宽像素尺寸为原始图像的相应尺寸的1/2-2/3;所述的步骤3,优选的,使用的图像处理的方法为Python语言numpy库中rot90、fliplr和flipud算法及其组合算法;所述的步骤8,优选的,训练次数不少于50次。