Answers.Body: <p>Tricky question. In my experience is better to just look for math resources on classic upsampling method, since deep learning papers and books tend to give them for granted, or not something related to AI (they are after all analytic methods). Another reason is probably that the math is not that hard, and already the wikipedia pages offer a good description of the basic methods
  (<a href="https://en.wikipedia.org/wiki/Nearest-neighbor_interpolation" rel="nofollow noreferrer">nearest-neighbours</a>, <a href="https://en.wikipedia.org/wiki/Bilinear_interpolation" rel="nofollow noreferrer">bilinear interpolation</a>, <a href="https://en.wikipedia.org/wiki/Bicubic_interpolation" rel="nofollow noreferrer">bicubic interpolation</a>).</p>
  <p>For some others interesting and more advance techniques I found useful this paper: <a href="https://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.91.8726&amp;rep=rep1&amp;type=pdf" rel="nofollow noreferrer">Mathematical Techniques for Image Interpolation</a>
  even though it's not exhaustive since it doesn't mention well known alternatives to bilinear or bicubic upsampling like <a href="https://en.wikipedia.org/wiki/Lanczos_resampling" rel="nofollow noreferrer">Lanczos</a>, so for completeness I would read also <a href="https://www.mdpi.com/2073-431X/8/2/30/htm" rel="nofollow noreferrer">A Study of Image Upsampling and Downsampling Filters
  </a></p>
  <p>Regarding the deep learning part, it's more valuable to search for papers that studies not the upsampling methods themselves, but the artifact they introduce, especially related to tasks like super-resolution. As a starting point I would dig into this <a href="https://distill.pub/2016/deconv-checkerboard/" rel="nofollow noreferrer">blogpost</a> and its references.</p>
  
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2021-09-17T13:45:33.303Z
Answers.LastActivityDate: 2021-09-17T13:45:33.303Z
Answers.UserDisplayName: Edoardo Guerriero
Body: <p>In deep learning, we encounter the <strong>upsample</strong> blocks several times, especially when we deal with images.</p>
  <p>Consider the following statements from description regarding <a href="https://pytorch.org/docs/stable/generated/torch.nn.Upsample.html" rel="nofollow noreferrer">UPSAMPLE</a> in PyTorch</p>
  <blockquote>
  <p>The algorithms available for upsampling are <strong>nearest neighbor and
  linear, bilinear, bicubic and trilinear</strong> for 3D, 4D and 5D input
  Tensor, respectively.</p>
  </blockquote>
  <p>Where can I read about these upsampling techniques in detail, especially in the context of deep learning?</p>
  
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2021-09-17T13:33:42.230Z
Comments.Text: They are just standard upsampling or *interpolation* techniques in computer graphics. Have you tried Google? For example, nearest-neighbour interpolation just copies the same pixel a bunch of times.
Comments.UserDisplayName: Criticize SE actions means ban
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2021-09-17T13:35:32.803Z
Comments.Text: I tried googling for upsampling techniques and found no single material that contains the information. @user253751
Comments.UserDisplayName: hanugm
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2021-09-17T13:36:05.100Z
Comments.Text: really? https://en.wikipedia.org/wiki/Nearest-neighbor_interpolation
Comments.UserDisplayName: Criticize SE actions means ban
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2021-09-17T13:37:05.803Z
Comments.Text: @user253751 It contains only one right? I want all of them together like a chapter or unit. Is there no such material?
Comments.UserDisplayName: hanugm
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2021-09-17T13:58:16.270Z
Comments.Text: https://en.wikipedia.org/wiki/Interpolation ?
Comments.UserDisplayName: Criticize SE actions means ban
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2021-09-18T01:31:05.563Z
Comments.Text: https://graphics.stanford.edu/courses/cs205a-13-fall/assets/notes/chapter11.pdf
Comments.UserDisplayName: hanugm
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2021-09-18T01:31:41.047Z
Comments.Text: @user253751 yeah, apt for intermediates.
Comments.UserDisplayName: hanugm
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2021-09-18T01:38:41.383Z
Comments.Text: https://www.ijert.org/research/a-comparison-study-on-different-interpolation-methods-based-on-satellite-images-IJERTV2IS60011.pdf
Comments.UserDisplayName: hanugm
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2021-09-18T01:47:46.450Z
Comments.Text: https://sisu.ut.ee/sites/default/files/imageprocessing/files/interpolation3.pdf
Comments.UserDisplayName: hanugm
Tags: <deep-learning><reference-request><upsampling>
Title: Where can I read about upsampling methods in detail?
UserDisplayName: hanugm
ThreadText: # Where can I read about upsampling methods in detail?
  
  (Asked by: username_0 on 2021-09-17)
  
  In deep learning, we encounter the **upsample** blocks several times, especially when we deal with images.
  
  Consider the following statements from description regarding [UPSAMPLE](https://pytorch.org/docs/stable/generated/torch.nn.Upsample.html) in PyTorch
  
  > The algorithms available for upsampling are **nearest neighbor and
  > linear, bilinear, bicubic and trilinear** for 3D, 4D and 5D input
  > Tensor, respectively.
  
  Where can I read about these upsampling techniques in detail, especially in the context of deep learning?
  
  **Tags:** deep-learning, reference-request, upsampling
  
  > **Comments:**
  > **username_1**: They are just standard upsampling or *interpolation* techniques in computer graphics. Have you tried Google? For example, nearest-neighbour interpolation just copies the same pixel a bunch of times.  
  > **username_0**: I tried googling for upsampling techniques and found no single material that contains the information. @user253751  
  > **username_1**: really? https://en.wikipedia.org/wiki/Nearest-neighbor_interpolation  
  > **username_0**: @user253751 It contains only one right? I want all of them together like a chapter or unit. Is there no such material?  
  > **username_1**: https://en.wikipedia.org/wiki/Interpolation ?  
  > **username_0**: https://graphics.stanford.edu/courses/cs205a-13-fall/assets/notes/chapter11.pdf  
  > **username_0**: @user253751 yeah, apt for intermediates.  
  > **username_0**: https://www.ijert.org/research/a-comparison-study-on-different-interpolation-methods-based-on-satellite-images-IJERTV2IS60011.pdf  
  > **username_0**: https://sisu.ut.ee/sites/default/files/imageprocessing/files/interpolation3.pdf  
  
  ---
  
  ## 1 answers
  
  ### Answer by username_2 on 2021-09-17. Score: 2
  
  Tricky question. In my experience is better to just look for math resources on classic upsampling method, since deep learning papers and books tend to give them for granted, or not something related to AI (they are after all analytic methods). Another reason is probably that the math is not that hard, and already the wikipedia pages offer a good description of the basic methods
  ([nearest-neighbours](https://en.wikipedia.org/wiki/Nearest-neighbor_interpolation), [bilinear interpolation](https://en.wikipedia.org/wiki/Bilinear_interpolation), [bicubic interpolation](https://en.wikipedia.org/wiki/Bicubic_interpolation)).
  
  For some others interesting and more advance techniques I found useful this paper: [Mathematical Techniques for Image Interpolation](https://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.91.8726&rep=rep1&type=pdf)
  even though it's not exhaustive since it doesn't mention well known alternatives to bilinear or bicubic upsampling like [Lanczos](https://en.wikipedia.org/wiki/Lanczos_resampling), so for completeness I would read also [A Study of Image Upsampling and Downsampling Filters](https://www.mdpi.com/2073-431X/8/2/30/htm)
  
  Regarding the deep learning part, it's more valuable to search for papers that studies not the upsampling methods themselves, but the artifact they introduce, especially related to tasks like super-resolution. As a starting point I would dig into this [blogpost](https://distill.pub/2016/deconv-checkerboard/) and its references.
  
  
  ---
  
  