resize 函数的介绍
无论是通过C++来编写opencv,还是通过python来写opencv,它们所包有的函数是基本一致的,因此,在这里我通过python来举例子:
cv2.resize(img,(0,0),fx=0.5,fy=0.5,interpolation=cv2.INTER_NEAREST)
在这里,里面有四个属性,第一个属性是输入图像的矩阵,即通过imread()函数将图片读入,得到了数值矩阵并存放到img中;而第二个属性则是(0,0),而这表示并不是直接通过规定缩放或放大后的图像大小;而第三个属性fx和fy则是0.5,表示长宽都缩小一倍;而第四个属性则是插值方法了。
各种插值方式
插值方法则是当图片缩放时,图片的像素点数值的大小的变化,因为图片的大小发生了变化,因此,这时插值方法就显得较为重要,否则,在不同的应用场合会造成不必要的影响。而插值方式分以下几种:
- INTER_NEAREST,即最近邻插值法;
- INTER_LINEAR,即双线性插值法,这也是默认设置,当我们忽略这一条属性时,计算机就会默认我们选的是这个;
- INTER_AREA,即区域插值法,使用像素区域关系进行重采样。 它大概率下是图像抽取的首选方法,因为它会产生无云纹理的结果。 但是当图像缩放时,它类似于INTE