I'm reading a recent published paper, but it lacks reproducible architecture diagram. So I'm trying to make sense of the implementation described below:
Our multi-task network has an encoder-decoder structure based on ResNet-18. The decoder is composed of four deconvolution layers to output the final feature map which has 1/4 resolution of the input image. Similar to U-Net, we add skip connections between encoder and decoder to fuse the features at different scales. Additionally, dilated convolution and Non-Local block are added in the last two residual blocks of encoder. Three heads are attached on top of the last feature map for keypoint detection, line feature and region feature regression respectively. We use L1 loss for line feature and region feature regression, and cross-entropy loss for keypoint detection with weights of each loss set to 1.
and
This non-local block is added after each of the last two residual blocks of our encoder network.
And per my understanding, this is a resnet + unet + custom blocks networks.
My questions:
- Is this basically Res-Unet, as described by this diagram, except that I added two extra blocks (Non-local block) after each last two residual block in encoder?
- What they mean by "Three heads are attached on top of the last feature map"? What are the heads?
- If the final output is a feature map (2D), how does one detect the keypoints since it's in set of (x, y) coordinates?