ckkelvinchan / BasicVSR_PlusPlus

Official repository of "BasicVSR++: Improving Video Super-Resolution with Enhanced Propagation and Alignment"
Apache License 2.0
589 stars 64 forks source link

Question for the computation of cond__n1 #9

Closed xingbo-jiang closed 2 years ago

xingbo-jiang commented 2 years ago

why the cond_n1 is the out of flow_wrap(feat_prop, flow_n1.permute(0, 2, 3, 1)) while feat_prop is zeros? why not flow_wrap(feat_n1,flow_n1.permute(0, 2, 3, 1) and feat_n1 = feats[module_name][-1]

ckkelvinchan commented 2 years ago

When it is zero, it doesn't matter when you warp it or not. It is still a zero feature. Therefore, we skip the warping to save computational cost.

xingbo-jiang commented 2 years ago

Thanks for your reply and i like your work very much, but i still have a question. In this way, computational cost is saved, however, the feature of adjacent frames is not transmitted to the feat-prop,which seems inconsistent with the paper. By the way, is the saving of computational cost substantial?

ckkelvinchan commented 2 years ago

At i=0, there is no neighbouring feature, and therefore you can directly set feat_prop to zero. For i>0, we need to use cond_n1 and cond_n2to align the neighboring feature

xingbo-jiang commented 2 years ago

OHHH,i get it. Sorry, I was sloppy when I looked at the code😂. Thank you very much🤞.