AndreKelm / RefineContourNet

Results of the paper "Object Contour and Edge Detection with RefineContourNet"
Other
21 stars 11 forks source link

about the size of predict_result #6

Closed jjkkqq closed 2 years ago

jjkkqq commented 2 years ago

hi! from your paper, i see the final size of your predict is 1/2 of the original size, is it necessary to conduct an upsampling op? thank you! image

AndreKelm commented 2 years ago

Hello, yes, upsampling is necessary, but it is already present in the implementation and used in the code. I think it was the bicubic one.

jjkkqq commented 2 years ago

I am studying the impact of upsampling on edge detection. Thank you for your reply!

CoachingJane commented 2 years ago

Due to equipment problems, I can't see your code. From your structure diagram, is thr Conv module just convolution instead of convolution plus activation function (such as relu)? Because you only marked the relu function on the RCU module. thankyou!

AndreKelm commented 2 years ago

It is just convolution! To understand the idea behind the different blocks and activation layers, I copy the corresponding text section from the RefineNet Paper: „Note that all convolutional components of the RefineNet have been carefully constructed inspired by the idea behind residual connections and follow the rule of identity map- ping [25]. This enables effective backward propagation of the gradient through RefineNet and facilitates end-to-end learning of cascaded multi-path refinement networks. Employing residual connections with identity mappings allows the gradient to be directly propagated from one block to any other blocks, as was recently shown by He et al. [25]. This concept encourages to maintain a clean information path for shortcut connections, so that these connections are not “blocked” by any non-linear layers or components. In- stead, non-linear operations are placed on branches of the main information path. We follow this guideline for de- veloping the individual components in RefineNet, including all convolution units. It is this particular strategy that allows the multi-cascaded RefineNet to be trained effectively. Note that we include one non-linear activation layer (ReLU) in the chained residual pooling block. We observed that this ReLU is important for the effectiveness of subsequent pool- ing operations and it also makes the model less sensitive to changes in the learning rate. We observed that one single ReLU in each RefineNet block does not noticeably reduce the effectiveness of gradient flow.“ [Lin, G., Milan, A., Shen, C., Reid, I.: Refinenet: Multi-path refinement networks for high-resolution semantic segmentation. In: 2017 IEEE Conference on Computer Vision and Pattern Recognition (CVPR). pp. 5168–5177 (July 2017). https://doi.org/10.1109/CVPR.2017.549]