Input image: 100x100 image below
input.bmp
Output image: 800x800 image after bilinear interpolation
bilinear.bmp
Output image: 800x800 image after bicubic interpolation
bicubic.bmp
Bicubic intepolation produces aesthetic image when observed by human eyes. This means that bicubic interpolation exaggerates the edge. Thus, the brightnesses near the edges are wrong. For scientific&academic purposes, you should use bilinear interpolation instead of bicubic interpolation.
Suppose that the image represents the region segmentation result. Namely, each pixel has region label which is represented by discrete integer. Let's resize this image. As you know, neither bicubic interpolation nor bilinear interpolation can produce a correct result. In this case, nearest neighbor is suited for interpolation algorithm.