以下均为github上opencv的个人学习笔记,原路径如下:
https://github.com/JimmyHHua/opencv_tutorials
源码示例:
import cv2 as cv
src = cv.imread("./test.png")
cv.namedWindow("input", cv.WINDOW_AUTOSIZE)
cv.imshow("input", src)
h, w = src.shape[:2]
print(h,w)
dst = cv.resize(src, (w*2,h*2),fx = 0.75,fy = 0.75,interpolation = cv.INTER_NEAREST)
cv.imshow("INTER_NEAREST", dst)
dst = cv.resize(src, (w*2,h*2), interpolation = cv.INTER_LINEAR)
cv.imshow("INTER_LINEAR", dst)
dst = cv.resize(src, (w*2,h*2), interpolation = cv.INTER_CUBIC)
cv.imshow("INTER_CUBIC", dst)
dst = cv.resize(src, (w*2,h*2), interpolation = cv.INTER_LANCZOS4)
cv.imshow("INTER_LANCZOS4", dst)
#cv.warpAffine()
cv.waitKey(0)
cv.destroyAllWindows()
OpenCV函数原型:
cv2.resize(InputArray src, OutputArray dst, Size, fx, fy, interpolation)
参数解释:
InputArray src 输入图片
OutputArray dst 输出图片
Size 输出图片尺寸
fx, fy 沿x轴,y轴的缩放系数
interpolation 插入方式
interpolation 选项所用的插值方法:
INTER_NEAREST 最近邻插值
INTER_LINEAR 双线性插值(默认设置)
INTER_AREA 使用像素区域关系进行重采样。 它可能是图像抽取的首选方法,因为它会产生无云纹理的结果。 但是当图像缩放时,它类似于INTER_NEAREST方法。
INTER_CUBIC 4x4像素邻域的双三次插值
INTER_LANCZOS4 8x8像素邻域的Lanczos插值
1.最近邻插值
越是简单的模型越适合用来举例子,我们就举个简单的图像:3X3 的256级灰度图,也就是高为3个象素,宽也是3个象素的图像,每个象素的取值可以是 0-255,代表该像素的亮度,255代表最亮,也就是白色,0代表最暗,即黑色。假如图像的象素矩

本文是关于OpenCV图像处理中的插值方法的学习笔记,包括最邻近插值、双线性插值和双三次插值的原理与实现。通过实例解释了不同插值方法如何影响图像缩放的效果,并提供了源码示例。
最低0.47元/天 解锁文章
1022

被折叠的 条评论
为什么被折叠?



