一种基于DCGAN的DEM增广方法
文献发布时间:2023-06-19 11:57:35
技术领域
本发明涉及一种数据增广方法,具体涉及一种基于DCGAN的DEM增广方法。
背景技术
数字高程模型DEM蕴含着丰富的地形与地貌信息,通过计算地形属性、提取地形要素,可多角度定量解析和刻画地表形态的复杂性。
为开展基于深度学习的地形要素分析研究,需获取更多的DEM数据样本,但是与自然图像相比,因实际地形有限,实际DEM数据中的某些地形要素并不容易找寻,能被正确标注和使用的要素样本十分稀缺,现在又没有DEM数据生成的相关技术。
发明内容
本发明的目的在于突破现有技术欠缺,提供一种基于DCGAN的DEM增广方法,该方法能够实现DEM数据的自动生成。
为达到上述目的,本发明所述的基于DCGAN(Deep Convolution GenerativeAdversarial Networks)的DEM增广方法包括以下步骤:
1)构建DCGAN网络的生成网络G及判别网络D;
2)构造DCGAN网络的训练数据集,训练数据集包括从真实DEM数据中选取的样本以及伪DEM数据样本;
3)利用训练数据集对DCGAN网络进行迭代训练,直至生成网络G输出的DEM数据符合期望,然后利用迭代训练后的DCGAN网络生成DEM数据,完成基于DCGAN的DEM增广。
生成网络G为五层转置卷积网络,前四层均由转置卷积、批量归一化操作及Relu激活函数组成,第五层为输出层,输出层由转置卷积及tanh激活函数组成,目的是使生成网络G的生成结果在[-1,1]之内;生成网络G的输入为一组服从标准正态分布的噪声向量,生成网络G的输出为生成的伪DEM数据。
判别网络D为五层卷积网络,前四层均由卷积、批量归一化操作及LeakyRelu激活函数组成,第五层为输出层,所述输出层由卷积及Sigmoid激活函数组成,利用判别网络D可获得样本真伪的分类结果,因此,判别网络D的输入为真实DEM样本及生成网络G生成的虚假DEM样本。
步骤2)中构造DCGAN训练数据集的操作为:
21)将一组100维服从正态分布的随机噪声向量输入到生成网络G中,生成伪DEM数据,用于构建DCGAN训练数据集中的伪DEM数据样本;
从SRTM网站下载DEM数据,选取其中典型的34块山地区域,将其随机裁剪成8000幅64×64格网的数据块,用于构建DCGAN训练数据集中的从真实DEM数据中选取的样本。
一种基于DCGAN的DEM增广方法包括:
构建模块,用于构建DCGAN网络的生成网络G及判别网络D;
构造模块,用于构造DCGAN网络的训练数据集,训练数据集包括从真实DEM数据中选取的样本以及伪DEM数据样本;
训练生成模块,利用训练数据集对DCGAN网络进行迭代训练,直至生成网络G输出的DEM数据符合期望,然后利用迭代训练后的DCGAN网络生成DEM数据,完成基于DCGAN的DEM增广。
本发明具有以下有益效果:
本发明所述的基于DCGAN的DEM增广方法在具体操作时,将神经网络与对抗学习相结合,以生成逼近真实地形的DEM数据,为探索深度学习在数字地形分析领域的应用奠定数据基础。
附图说明
图1为DCGAN网络的结构图;
图2为本发明的示意图;
图3为真实DEM数据的示意图;
图4a为DCGAN迭代10次后生成DEM数据的渲染效果图;
图4b为DCGAN迭代100次后生成DEM数据的渲染效果图;
图4c为DCGAN迭代500次后生成DEM数据的渲染效果图;
图4d为DCGAN迭代1000次后生成DEM数据的渲染效果图;
图4e为DCGAN迭代3000次后生成DEM数据的渲染效果图;
图4f为DCGAN迭代5000次后生成DEM数据的渲染效果图;
图5a为DCGAN判别网络的损失函数的变化曲线图;
图5b为DCGAN生成网络的损失函数的变化曲线图;
图6a为第一个DEM数据块的三维效果图;
图6b为第二个DEM数据块的三维效果图;
图6c为第三个DEM数据块的三维效果图;
图6d为第四个DEM数据块的三维效果图。
具体实施方式
下面结合附图对本发明做进一步详细描述:
生成对抗网络GAN作为目前最有效的生成网络之一,在自然图像的生成方面取得了显著的成效。与GAN相比,DCGAN将判别网络D由多层感知器换成了卷积神经网络,将生成网络G换成了一个反卷积的神经网络。在无标签情况下,DCGAN对输入样本采用迭代扩展大小的方式,逐步提高生成数据的分辨率和细节,可稳定训练,达到更好的收敛效果。因此,本发明建立了一种基于DCGAN的DEM增广方法,为探索深度学习在数字地形分析领域的应用奠定数据基础。
本发明所述方法的技术核心是将深度卷积网络与生成对抗网络相结合,迁移到DEM数据域的样本增广方法。
参考图1及图2,本发明所述的基于DCGAN的DEM增广方法包括以下步骤:
1)构建DCGAN网络的生成网络G及判别网络D;
2)构造DCGAN网络的训练数据集,训练数据集包括从真实DEM数据中选取的样本以及伪DEM数据样本;
3)利用训练数据集对DCGAN网络进行迭代训练,直至生成网络G输出的DEM数据符合期望,然后利用迭代训练后的DCGAN网络生成DEM数据,完成基于DCGAN的DEM增广。
生成网络G为五层转置卷积网络,前四层均由转置卷积、批量归一化操作及Relu激活函数组成,第五层为输出层,输出层由转置卷积及tanh激活函数组成,目的是使生成网络G的生成结果在[-1,1]之内,生成网络G的输入为一组服从标准正态分布的噪声向量,生成网络G的输出为生成的伪DEM数据。
判别网络D为五层卷积网络,前四层均由卷积、批量归一化操作及LeakyRelu激活函数组成,第五层为输出层,输出层由卷积及Sigmoid激活函数组成,利用判别网络D可获得样本真伪的分类结果,所以判别网络D的输入为真实DEM样本及生成网络G生成的虚假DEM样本。
步骤2)中构造DCGAN训练数据集的操作为:
21)将一组100维服从正态分布的随机噪声向量输入到生成网络G中,生成伪DEM数据,用于构建DCGAN训练数据集中的伪DEM数据样本;
从SRTM网站下载DEM数据,选取其中典型的34块山地区域,将其随机裁剪成8000幅64×64格网的数据块,用于构建DCGAN训练数据集中从真实DEM数据中选取的样本。
步骤3)对DCGAN网络进行迭代训练的具体操作为:
将生成网络G和对抗网络D视为两个单独网络进行训练,用独立交替迭代训练的方式进行网络训练,以达到两个目标,一是使对抗网络D能够判断输入样本的真伪,二是使生成网络G产生的数据能够通过判别网络D的判别。
设从真实DEM数据中选取的样本为x,噪声z经过生成网络G后得数据样本
判别网络D的训练目标则由式(2)所示的最大化对数似然函数来求解,与生成网络G的训练目标完全相反。将真实DEM与生成的伪DEM样本输入到判别网络D中,希望判别网络D尽可能正确地区分输入DEM来源于生成的伪样本还是真实样本。
通过调整网络参数,不断迭代执行上述对抗优化学习过程,最终获得的模型应使生成网络生成的DEM数据更加真实,判别网络的判断更加准确,满足式(3)。而迭代训练过程的终止条件为:当判别网络D已无法正确判断输入为生成的伪样本还是真样本时,认为网络训练达到最优。理论上,当p
合并式(1)及式(2),得到深度卷积生成对抗网络的最终目标函数为:
本发明所述的基于DCGAN的DEM增广方法包括:
构建模块,用于构建DCGAN网络的生成网络G及判别网络D;
构造模块,用于构造DCGAN网络的训练数据集,训练数据集包括从真实DEM数据中选取的样本以及伪DEM数据样本;
训练生成模块,利用训练数据集对DCGAN网络进行迭代训练,直至生成网络G输出的DEM数据符合期望,然后利用迭代训练后的DCGAN网络生成DEM数据,完成基于DCGAN的DEM增广。
实施例一
本实施例选择山区DEM数据,具体操作步骤为:
1)安装Pytorch框架深度学习实验环境;
2)从CIAT-CSISRTM网站下载DEM数据,选取其中典型的34块(6000×6000格网)山地区域,将其随机裁剪成8000幅64×64大小的DEM数据块,用于构建训练数据集中的真实样本(label为1)。对部分样本的高程值做灰度渲染后的效果如图3;
3)DCGAN的生成网络G以100维服从正态分布的随机噪声向量为输入,生成网络结合反向传播方法对输入的噪声不断优化,使生成的伪DEM与原始真实样本的数据特征更加接近,以“欺骗”判别网络;
4)对DCGAN网络进行训练时,可以将生成网络G和判别网络D视为两个单独网络进行训练,用独立交替迭代训练的方式进行网络训练,以达到两个目标,一是使对抗网络D能够判断输入样本的真伪,二是使生成网络G产生的数据能够通过判别网络D的判别。
假设真实的DEM数据样本为x,噪声z经过生成网络后得到的数据样本为
判别网络D的训练目标为:
最大化对数似然函数来求解,与生成网络的训练目标完全相反,将步骤2)中得到的真实DEM样本和步骤3)中生成网络G生成的伪DEM样本输入到判别网络D中,希望判别网络尽可能正确区分样本来源于生成的伪数据还是原始的真实DEM数据;
5)采用加上动量地Adam优化器对生成网络和判别网络进行优化,其中动量值为0.5,批处理大小为16,学习率为0.0002;
6)通过调整网络参数,不断迭代执行步骤4)中的对抗优化学习过程,最终获得的模型应使生成网络生成的DEM数据更加真实,判别网络的判断更加准确,满足:
迭代训练过程的终止条件为:当判别网络已无法正确判断输入的是生成的伪样本还是真样本时,则认为网络训练达到最优。理论上,当p
如图4所示,DCGAN网络自服从正态分布的随机噪声向量开始学习,在第10次迭代时生成的数据块仍是一些噪声点(图4a),在迭代到100次、500次(分别如图4b、图4c)时,已经可以看到大致的DEM数据地形区域,随着迭代次数的不断增加,效果不断改善,3000次以后DEM数据的地形轮廓也逐渐清晰(图4e)。
由于DCGAN网络模型复杂度高、不稳定,经过反复调整参数,多次进行试验,得到的网络训练损失函数变化曲线如图5a及图5b所示,当迭代次数达到6000左右时,无论是生成网络还是对抗网络,均已逐渐趋于稳定,因此选择迭代6000次时生成的DEM高程值,在python中以matplotlib库进行渲染,得到4块DEM数据的三维可视化虚拟地形(图6a至图6d),其中,z轴代表高程值,x、y轴代表高程值所在的格网坐标。
上述实施案例表明,卷积神经网络与生成对抗网络相结合,发挥各自优势,可生成逼近真实地形的DEM数据。尤其是可以学习到训练数据中沟谷纵横交错的高程分布特征,能表达一般意义上的山地地形,证明了本发明的可行性。
- 一种基于DCGAN的DEM增广方法
- 一种基于DCGAN和深度神经网络方法的房颤识别方法