-
Notifications
You must be signed in to change notification settings - Fork 20
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
some question #11
Comments
|
Thank you very much for your reply. |
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大小一样就可以。 |
谢谢!可是Ref↓的3x3patch是从Ref↓ Block中取得,ref_down_block_size = 1.5,怎么从1.5x1.5中取3x3?我看代码中的reflr_patches大小为15x15,是1.5变换来的,为什么不直接设置ref_down_block_size=15,这个地方不太明白。 |
首先我们设置了lr_block_size=8,ref_down_block_size = 1.5(这里的1.5并不是表示实际block大小,而是表示成了比例的形式,代码可能写得没有太简洁直观以至于造成了你的误解)。 MASA-SR/models/archs/MASA_arch.py Line 356 in 9f0cccb
的计算结果是px=w_lr / 8。 再通过这一行 MASA-SR/models/archs/MASA_arch.py Line 361 in 9f0cccb
的计算,代入px=w_lr / 8,我们可以得到diameter_x=1.5*w_ref_down/px+1,即diameter_x=12*w_lr/w_ref_down+1(加1是为了让它为奇数,方便后续取中心patch)。 |
好的,还想请教下,如果LR patch对应到的Ref↓ patch在边界,比如在左上角的3x3,那这时以这个patch为中心进行裁剪ref_down_block,会超出图像范围,这个问题怎么处理的,对应代码中哪一部分 |
我们在crop patch之前先对block进行了padding(unfold函数中的padding参数),以保证不会出现这种情况。 MASA-SR/models/archs/MASA_arch.py Line 303 in 9f0cccb
|
可是padding后的大小是42x42,若以左上角3x3patch为中心取13x13的block,还是不够大,这里提到的以patch为中心裁剪block,不是这么理解的吗 |
不好意思,上面的回答理解错你的意思了。超出图像边界的话,我们就只裁到图像边界: MASA-SR/models/archs/MASA_arch.py Lines 391 to 405 in 9f0cccb
比如这里的mask会把超出图像左边界的坐标置为0,右/上/下边界情况同理。不知道这是否回答了你的问题? |
非常感谢,明白了! |
1.stage1中的LR与Ref↓大小不应该都是40x40吗,为什么图中画的不一样大
2.后两层索引图Dk的尺寸小于x2,x4参考特征的大小,怎么根据Dk取这些尺寸不一致的参考特征中取特征
3.dilation=1就是patch=3x3吗
4。LR先变成LR_down,再变回LR进行后续处理的意义是什么
The text was updated successfully, but these errors were encountered: