Skip to main content
27 votes
Accepted

What is a fully convolution network?

Fully convolution networks A fully convolution network (FCN) is a neural network that only performs convolution (and subsampling or upsampling) operations. Equivalently, an FCN is a CNN without fully ...
nbro's user avatar
  • 40.9k
15 votes
Accepted

How can I deal with images of variable dimensions when doing image segmentation?

There are 2 problems you might face. Your neural net (in this case convolutional neural net) cannot physically accept images of different resolutions. This is usually the case if one has fully-...
Anuar Y's user avatar
  • 404
9 votes

How to handle rectangular images in convolutional neural networks?

I think the squared image is more a choice for simplicity. There are two types of convolutional neural networks Traditional CNNs: CNNs that have fully connected layers at the end, and fully ...
Jérémy Blain's user avatar
8 votes
Accepted

Why can a fully convolutional network accept images of any size?

The reason is that when using a convolutional layer, you select the size of the filter kernels, which are independent of the image/layer input size (provided that images smaller than the kernels are ...
DrMcCleod's user avatar
  • 603
6 votes

What do the words "coarse" and "fine" mean in the context of computer vision?

tl;dr What does that mean in the context of this paper? With "coarse segmentation" the author means a segmentation that doesn't have much detail. "Fine segmentation", on the other hand, refers to ...
Djib2011's user avatar
  • 3,193
2 votes

How can I deal with images of variable dimensions when doing image segmentation?

You could also have a look at the paper Spatial Pyramid Pooling in Deep Convolutional Networks for Visual Recognition (2015), where the SPP-net is proposed. SSP-net is based on the use of a "...
Felix Goldberg's user avatar
2 votes
Accepted

Why do we do need compression in Semantic Segmentation?

There is never a 100% accurate theory, however it's been observed to be beneficial, however I would argue that is due to the following: you want to have a latent dimension, to learn the manifold ...
Alberto's user avatar
  • 2,293
2 votes
Accepted

Why FCNN is not always better than CNN?

Why Fully-Connected Neural Network is not always better than Convolutional Neural Network? The main reason why in many cases, a CNN will outperform a fully-connected (FC) neural network, i.e. MLP, is ...
Chillston's user avatar
  • 1,748
2 votes
Accepted

Best practice for handling letterboxed images for non fully-convolutional deep learning networks?

Padding is indeed the easiest solution. And if no bias is used then masking the extra values during the loss computation is also not necessary, since it's enough to use zero as padding value. You ...
Edoardo Guerriero's user avatar
2 votes

Does a fully convolutional network share the same translation invariance properties we get from networks that use max-pooling?

Neural networks are not invariant to translations, but equivariant, Invariance vs Equivariance Suppose we have input $x$ and the output $y=f(x)$ of some map between spaces $X$ and $Y$. We apply ...
spiridon_the_sun_rotator's user avatar
1 vote

What is the point of using 1D and 2D convolutions with a kernel size of 1 and 1x1 respectively?

Traditional CNNs used for image classification (and related tasks) are composed of 1 or more fully connected layers (FCs), after the convolutional and pooling layers, which take as input the features ...
nbro's user avatar
  • 40.9k
1 vote

Can a fully convolutional network always return an image of the same size as the original?

I ended up using a work around. I set up the network so that an C x C (i.e. 320 x 320) input would output a C x C mask for some constant C (in my case it was 320). I then resized the image I wanted to ...
Alex's user avatar
  • 137
1 vote

Does a fully convolutional network share the same translation invariance properties we get from networks that use max-pooling?

FCNs can and typically have downsampling operations. For example, u-net has downsampling (more precisely, max-pooling) operations. The difference between an FCN and a regular CNN is that the former ...
nbro's user avatar
  • 40.9k
1 vote

How to handle rectangular images in convolutional neural networks?

If you have a rectangular image and you are using existing models (or existing code), then you have to add an input pre-processing pipeline which transforms the image to standard dimensions. This is ...
Abhishek Singh's user avatar
1 vote

How can I deal with images of variable dimensions when doing image segmentation?

Try resizing the image to the input dimensions of your neural network architecture(keeping it fixed to something like 128*128 in a standard 2D U-net architecture) using nearest neighbor interpolation ...
Shalabh Gupta's user avatar
1 vote

How can I deal with images of variable dimensions when doing image segmentation?

As you want to perform image segmentation, you can use U-Net, which does not have fully connected layers, but it is a fully convolutional network, which makes it able to handle inputs of any dimension....
ganLover's user avatar
1 vote

How can I deal with images of variable dimensions when doing image segmentation?

Assuming you have a large dataset, and it's labeled pixel-wise, one hacky way to solve the issue is to preprocess the images to have same dimensions by inserting horizontal and vertical margins ...
Fadi Bakoura's user avatar
1 vote

What are the counterparts of non-linearities and dropout in fully convolutional networks?

All-convolutional neural network is a more general concept which can be (and is often) used without deconvolutional and unpolling layers, e.g. for an ordinary classification task. The idea is to ...
Maxim's user avatar
  • 1,967

Only top scored, non community-wiki answers of a minimum length are eligible