11-图像的缩放

复制代码
    在对图像进行操作的过程中,经常会遇到要将图像放大或者缩小,从而进行进一步操作的情况。例如将图片放大后察看局部细节,或者将一张大图缩小后作为图标使用。使用 OpenCV 提供的 cv2.resize()函数实现图像的缩放。
    原始图像:
    ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/e8584eb46f584bc0bc0b6b03e08e4c0e.png)

代码-1:

python 复制代码
import cv2

bird = cv2.imread('images/bird.png')
# 获取图片的宽和高
rows,cols = bird.shape[:2]
# 缩放图片大小:将图片缩小到原来的0.5倍
size = (int(cols*0.5),int(rows*0.5))
# 缩放图片 使用INTER_AREA:缩小图片
bird_resize = cv2.resize(bird,size,interpolation=cv2.INTER_AREA)
cv2.imshow('bird',bird)
cv2.imshow('bird_resize',bird_resize)
cv2.waitKey(0)
cv2.destroyAllWindows()

执行结果:

代码-2:

python 复制代码
import cv2

bird = cv2.imread('images/bird.png')
# 获取图片的宽和高
rows,cols = bird.shape[:2]
# 缩放图片 fx:缩放比例,fx为x轴缩放比例,fy为y轴缩放比例
bird_resize = cv2.resize(bird,None,fx=0.5,fy=0.5,interpolation=cv2.INTER_AREA)
cv2.imshow('bird',bird)
cv2.imshow('bird_resize',bird_resize)
cv2.waitKey(0)
cv2.destroyAllWindows()

执行结果:同上

代码解读:

函数 cv2.resize()

在 OpenCV 中使用函数 cv2.resize()实现对图像的缩放,该函数的具体形式如下所示:

dst=cv2.resize( src,dsize,fx\[,fy,\[,interpolation]])

  • src 代表需要缩放的原始图像;
  • dst 代表输出的目标图像,该参数的类型与 src 相同;
  • dsize 代表缩放后输出图像大小,如果指定了参数 dsize 的值,则无论是否指定了参数 fx 和 fy 的值,都由参数 dsize
    来决定目标图像大小。如果参数 dsize 的值是 0,那么目标图像的大小通过参数 fx 和 fy 来决定。
  • fx 代表水平方向的缩放比例;
  • fy 代表垂直方向的缩放比例;
  • interpolation 代表插值方式。
相关推荐
Evand J2 小时前
【MATLAB例程|图像滤波降噪13】局部噪声方差自适应滤波(LNR)图像降噪与效果展示。附完整例程的下载链接
图像处理·计算机视觉·matlab·滤波·代码·降噪
小和尚同志2 小时前
小黑插图 Skill:从 11.7k star 的 Codex 专属,到 Claude Code 能用的平替
人工智能·aigc
高洁012 小时前
孪生不止在工厂:能源、医疗与农业
人工智能·深度学习·transformer·知识图谱·tornado
外域速览2 小时前
智谱50亿美元押注AI自训练
大数据·人工智能
人工智能培训2 小时前
孪生不止在工厂:能源、医疗与农业
大数据·人工智能
米小虾2 小时前
让模型说"我不知道",比让它答对更难:放弃文本生成能换来什么
人工智能
新新学长搞科研2 小时前
【SPIE出版】2026年人工智能、新材料与新能源国际学术会议(AINMNE 2026)
人工智能·新能源·新材料
野生技术架构师2 小时前
2026 Java 面试全套总结,八股 + 场景 + AI 相关面试考点
java·人工智能·面试
米小虾3 小时前
不写出来的思考:把 Transformer 的层循环起来,是第三条 scaling 轴还是省错了地方?
人工智能
A.说学逗唱的Coke3 小时前
【大模型专题】别再用 HTTP 直连 Agent 了:用 Kafka 承载 A2A 协议,从 PoC 走到生产
人工智能·kafka·a2a