SkyeLu
SkyeLu
是的。
Since the resolution of testing images is much larger than that of training images. Better to test on GPU whose memory is larger than 16G. Or you may test on...
1. 只是在训练过程中LR和Ref↓大小相同,但测试时并不一定,这么画是为了体现更general的cases。 2. 具体参考这部分code:https://github.com/dvlab-research/MASA-SR/blob/9f0cccb71beafa764dadc5984fc8751cc0740c79/models/archs/MASA_arch.py#L427-L432 针对不同大小的参考特征,会对kernel size,stride做相应调整。例如,若x1的patch大小为3x3,则对于x2的参考特征,我们会将其切为6x6,且stride设为2,这样一来产生的patch数就会与x1的patch数相同。 3. 是的 4. 并没有对LR进行downsample。
Hi,文中的block和patch是两个不一样的概念,patch是从block中取的。Ref↓ block的大小可以与LR Block的大小不一样,但Ref↓ patch的大小是需要与LR patch的大小一样的(比如都是3x3)。具体见正文的Fig.3,淡蓝色实线框为block(当然文中LR block可能跟Ref↓ block画成一样大小了,但实际可以不一样大小),其他颜色虚线框为patch,计算correlation是patch之间相互计算,只需要保持patch大小一样就可以。
首先我们设置了lr_block_size=8,ref_down_block_size = 1.5(这里的1.5并不是表示实际block大小,而是表示成了比例的形式,代码可能写得没有太简洁直观以至于造成了你的误解)。 那么这里 https://github.com/dvlab-research/MASA-SR/blob/9f0cccb71beafa764dadc5984fc8751cc0740c79/models/archs/MASA_arch.py#L356 的计算结果是px=w_lr / 8。 再通过这一行 https://github.com/dvlab-research/MASA-SR/blob/9f0cccb71beafa764dadc5984fc8751cc0740c79/models/archs/MASA_arch.py#L361 的计算,代入px=w_lr / 8,我们可以得到diameter_x=1.5\*w_ref_down/px+1,即diameter_x=12\*w_lr/w_ref_down+1(加1是为了让它为奇数,方便后续取中心patch)。
我们在crop patch之前先对block进行了padding(unfold函数中的padding参数),以保证不会出现这种情况。 https://github.com/dvlab-research/MASA-SR/blob/9f0cccb71beafa764dadc5984fc8751cc0740c79/models/archs/MASA_arch.py#L303
不好意思,上面的回答理解错你的意思了。超出图像边界的话,我们就只裁到图像边界: https://github.com/dvlab-research/MASA-SR/blob/9f0cccb71beafa764dadc5984fc8751cc0740c79/models/archs/MASA_arch.py#L391-L405 比如这里的mask会把超出图像左边界的坐标置为0,右/上/下边界情况同理。不知道这是否回答了你的问题?
Hi, if you are training on your own dataset, I think it is better that the reference image and the gt-HR image look similar, in this way, the training difficulty...
Hi, previously I downloaded the dataset from the personal page of the author of "Super-resolution from Internet-scale Scene" (link: http://cs.brown.edu/~lbsun/#name). However, I found the project page is 404 now. You...