【问题标题】:Modifying size of input images for Chainer DCGAN model修改 Chainer DCGAN 模型的输入图像大小
【发布时间】:2019-05-24 11:46:46
【问题描述】:

我正在使用位于 https://github.com/chainer/chainer/blob/master/examples/dcgan/train_dcgan.py 的 Chainer DCGAN 示例文件。它适用于 32x32 图像,但对于其他分辨率,README.md 指示修改 net.py 中的网络架构。

根据我阅读文档的理解,训练图像的大小作为参数发送到生成器类的构造函数,作为bottom_width 和ch。这是 32x32 的代码。

类生成器(chainer.Chain): def __init__(self, n_hidden, bottom_width=4, ch=512, wscale=0.02):

我很困惑如何将其转换为 32x32,以及如何将其修改为其他分辨率。任何帮助将不胜感激。

【问题讨论】:

    标签: python-3.x machine-learning artificial-intelligence chainer dcgan


    【解决方案1】:

    您可以通过了解Deconvolution2D 的行为来计算它。 在net.py 中,3 Deconvolution2D 层(self.dc1self.dc2self.dc3)是用stride=2L.Deconvolution2D 的第 4 个参数)定义的,它使输入高度/宽度加倍。

    因此,输出大小将为bottom_size * 2^3,当bottom_size=4 时结果为32。

    因此,例如,如果您想获得 64x64 图像,您可以为生成器和判别器设置 bottom_size=8(但您需要 64x64 图像作为真实数据,而不是 cifar-100,即 32x32 图像)。

    输入输出大小关系详情请参考官方文档。

    【讨论】:

    • 当我第一次发布这个答案时,我以为我接受了这个答案。抱歉耽搁了。它有效!
    猜你喜欢
    • 2021-11-02
    • 1970-01-01
    • 2021-07-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-08-25
    • 1970-01-01
    相关资源
    最近更新 更多