最近邻插值
顾名思义,最近邻插值法在放大图像时补充的像素是最近邻的像素的值。由于方法简单,所以处理速度很快,但是得到的图像常常含有锯齿边缘。如下图所示:
import cv2
import numpy as np
def function(img):
height,width,channels =img.shape
emptyImage=np.zeros((800,800,channels),np.uint8)
sh=800/height
sw=800/width
for i in range(800):
for j in range(800):
x=int(i/sh)
y=int(j/sw)
emptyImage[i,j]=img[x,y]
return emptyImage
img=cv2.imread("path/lenna.png")
zoom=function(img)
print(img.shape)
print(zoom.shape)
cv2.imshow("image",img). #(512,512,3)
cv2.imshow("nearest interp",zoom) #(800,800,3)
cv2.waitKey(0)
双线性插值
先说说简单的单线性插值函数