# What is the difference between upsampling and bi-linear upsampling in a CNN?

I am trying to understand this paper and am unsure of what bi-linear upsampling is. Can anyone explain this at a high-level?

https://arxiv.org/abs/1606.00915

In the context of image processing, upsampling is a technique for increasing the size of an image.

For example, say you have an image with a height and width of $64$ pixels each (totaling $64 \times 64 = 4096$ pixels). You want to resize this image to a height and width of 256 pixels (totaling $256 \times 256 = 65536$ pixels). In the new, larger image you only know the value of $1$ out of every $16$ pixels. How are you going to calculate the values for the rest?

Well, the methods that do that for you are called upsampling techniques. The most common are:

• Nearest-Neighbor: Copies the value from the nearest pixel.

• Bilinear: Uses all nearby pixels to calculate the pixel's value, using linear interpolations.

• Bicubic: Again uses all nearby pixels to calculate the pixel's values, through polynomial interpolations. Usually produces a smoother surface than the previous techniques, but its harder to compute.

• Other more complex resampling algorithms, e.g. Lanczos.

An article explaining the differences among image resampling techniques can be found here.