Python----计算机视觉处理(Opencv:图像缩放)

图像缩放

与图像旋转里的缩放的原理一样,图像缩放的原理也是根据需要将原图像的像素数量增加或减少,并通 过插值算法来计算新像素的像素值。


导入模块

python 复制代码
import cv2

输入图像

python 复制代码
img=cv2.imread('lena.png')

图像缩放

python 复制代码
img_size=cv2.resize(img,None,fx=0.5,fy=0.5,interpolation=cv2.INTER_LINEAR)

python 复制代码
img_size=cv2.resize(img,(200,200),interpolation=cv2.INTER_LINEAR)

输出图像

python 复制代码
cv2.imshow('img_resize',img_size)
cv2.waitKey(0)

完整代码

python 复制代码
import cv2

img=cv2.imread('lena.png')

# dsize和fx、fy不能同时使用,如果同时出现,会以dsize的标准进行缩放
# 如果想要使用resize函数,就必须填入两个参数:src和dsize
# 如果不想使用dsize,赋为None就行。
img_size=cv2.resize(img,None,fx=0.5,fy=0.5,interpolation=cv2.INTER_LINEAR)

cv2.imshow('img_resize',img_size)
cv2.waitKey(0)

库函数

resize()

python 复制代码
	cv.resize(	src, dsize[, dst[, fx[, fy[, interpolation]]]]	) ->	dst
方法 描述
src 输入图像
dst 输出图像
dsize 输出图像;它具有大小 dsize(当它不为零时)或从 src.size() 、fx 和 fy 计算的大小;DST 的类型与 src 的类型相同。
fx 沿水平轴的比例因子;当它等于 0 时,它被计算为
fy 沿纵轴的比例因子;当它等于 0 时,它被计算为
interpolation 插值方法参见 InterpolationFlags

|---------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| flags | 插值方法 |
| INTER_NEAREST Python:cv.INTER_NEAREST | 最近邻插值 |
| INTER_LINEAR Python:cv.INTER_LINEAR | 双线性插值 |
| INTER_CUBIC Python:cv.INTER_CUBIC | 双三次插值 |
| INTER_AREA Python:cv.INTER_AREA | 使用像素区域关系重新采样。这可能是图像抽取的首选方法,因为它可以获得无摩尔纹的结果。但是当图像缩放时,它类似于 INTER_NEAREST 方法。 |
| INTER_LANCZOS4 Python:cv.INTER_LANCZOS4 | 8x8 邻域上的 Lanczos 插值 |
| INTER_LINEAR_EXACT Python:cv.INTER_LINEAR_EXACT | 位精确双线性插值 |
| INTER_NEAREST_EXACT Python:cv.INTER_NEAREST_EXACT | 位精确最近邻插值。这将产生与 PIL 、 scikit-image 或 Matlab 中的最近邻方法相同的结果。 |
| INTER_MAX Python:cv.INTER_MAX | 插值代码的掩码 |
| WARP_FILL_OUTLIERS Python:cv.WARP_FILL_OUTLIERS | 标志,填充所有目标图像像素。如果其中一些对应于源图像中的异常值,则它们将设置为零 |
| WARP_INVERSE_MAP Python:cv.WARP_INVERSE_MAP | 标志, 逆变换 例如,linearPolarlogPolar 变换: * flag 未设置:dst(ρ,φ)=src(x,y) * flag 的dst(x,y)=src(ρ,φ) |
| WARP_RELATIVE_MAP Python:cv.WARP_RELATIVE_MAP |

相关推荐
会的全对٩(ˊᗜˋ*)و5 分钟前
【数据挖掘】数据挖掘综合案例—银行精准营销
人工智能·经验分享·python·数据挖掘
云渚钓月梦未杳7 分钟前
深度学习03 人工神经网络ANN
人工智能·深度学习
在美的苦命程序员10 分钟前
中文语境下的视频生成革命:百度 MuseSteamer 的“产品级落地”启示录
人工智能·百度
___波子 Pro Max.24 分钟前
GitHub Actions配置python flake8和black
python·black·flake8
kngines26 分钟前
【字节跳动】数据挖掘面试题0007:Kmeans原理,何时停止迭代
人工智能·数据挖掘·kmeans
Kali_0729 分钟前
使用 Mathematical_Expression 从零开始实现数学题目的作答小游戏【可复制代码】
java·人工智能·免费
贾全35 分钟前
第十章:HIL-SERL 真实机器人训练实战
人工智能·深度学习·算法·机器学习·机器人
每日摸鱼大王41 分钟前
互联网摸鱼日报(2025-07-01)
人工智能
GIS小天1 小时前
AI+预测3D新模型百十个定位预测+胆码预测+去和尾2025年7月4日第128弹
人工智能·算法·机器学习·彩票
lx7416026981 小时前
cd-agent更换cd模型(自用)
计算机视觉