当前位置: 首页 > news >正文

【五分钟】学会利用cv2.resize()函数实现图像缩放

引言

在numpy知识库:深入理解numpy.resize函数和数组的resize方法中,小编较为详细地探讨了numpy的resize函数背后的机理。从结果来看,numpy.resize函数并不适合对图像进行缩放操作。而opencv中的resize函数虽然和numpy的resize函数同名,但却支持图像的缩放操作。

需求场景

欲对高为384,宽为512的图像进行放大或缩小。

生成初始图像

代码如下:

import cv2
import numpy as np# 生成初始图像
img = np.zeros((384, 512), dtype=np.uint8) 
img[172:212, 32:-32] = 255
print(img.shape) # (高,宽) ---> (384, 512)cv2.imshow('img', img)
cv2.waitKey(0)

在这里插入图片描述

将初始图像的【高】放大一倍(384 --> 768)

代码如下:

import cv2
import numpy as np# 生成初始图像
img = np.zeros((384, 512), dtype=np.uint8)
img[172:212, 32:-32] = 255
H, W = img.shape # img.shape 分别记录了图像的【高】和【宽】 --> 【高前宽后】
print("before", H, W) # 384 512# 可行的方案1 ———— 使用cv2.resize函数的dsize参数指定输出图像的宽高
# dsize的第一个参数指定的是输出图像的【宽】,第二个才是【高】 --> 【宽前高后】
# --> 与img.shape正好相反,使用cv2.resize函数的dsize参数需要特别注意。
img = cv2.resize(img, dsize=(W, H*2)) # 注意dsize参数的使用方式# 可行的方案2 ———— 使用cv2.resize函数的fy参数
# 要点1: fy=2表示沿着y轴(高)方向放大一倍;
# 要点2: fx=1虽然没有起到作用,但不可省略;
# 要点3: dsize参数必须设置为None;
img = cv2.resize(img, dsize=None, fx=1, fy=2)) # 沿着高的方向将初始图像放大一倍
# fx = 2, fy = 1 ---> 宽放大一倍,高保持不变
# fx = 0.5, fy = 1 ---> 宽缩小为原来1/2,高保持不变
# fx = 1, fy = 0.5 ---> 高缩小为原来1/2,宽保持不变# 打印新图像大小
new_H, new_W = img.shape
print("after", new_H, new_W) # 768 512# 显示图像
cv2.imshow('img', img)
cv2.waitKey(0)

运行结果:
在这里插入图片描述

在这里插入图片描述

结束语

如果本博文对你有所帮助,可以点个赞/收藏支持一下,如果能够持续关注,小编感激不尽~
小编会坚持创作,持续优化博文质量,以小见大,给读者带来更好的阅读体验~

相关文章:

【五分钟】学会利用cv2.resize()函数实现图像缩放

引言 在numpy知识库:深入理解numpy.resize函数和数组的resize方法中,小编较为详细地探讨了numpy的resize函数背后的机理。从结果来看,numpy.resize函数并不适合对图像进行缩放操作。而opencv中的resize函数虽然和numpy的resize函数同名&…...

vuepress-----18、图片缩放

图片引入两种方式 地址 # 图片缩放插件 # 实战 md文件引入图片 <img class"zoom-custom-imgs" :src"$withBase(/favicon.ico)" alt"favicon">安装配置插件 vuepress/medium-zoom: {selector: img.zoom-custom-imgs,},效果展示...

前端开发_移动Web+动画

平面转换 作用&#xff1a;为元素添加动态效果&#xff0c;一般与过渡配合使用 概念&#xff1a;改变盒子在平面内的形态&#xff08;位移、旋转、缩放、倾斜&#xff09; 平面转换又叫 2D 转换 平移 属性&#xff1a;transform: translate(X轴移动距离&#xff0c;Y轴移动…...

【Python】 生成二维码

创建了一个使用 python 创建二维码的程序。 下面是生成的程序的图像。 功能描述 输入网址&#xff08;URL&#xff09;。 输入二维码的名称。 当单击 QR 码生成按钮时&#xff0c;将使用 QRname 中输入的字符将 QR 码生成为图像。 程序代码 import qrcode import tkinterd…...

Qt与Sqlite3

操作流程&#xff1a; (1)与数据库连接 (2)进行增删改查操作 (3)关闭数据库 示例&#xff1a; 参考&#xff1a;Qt 操作SQLite数据库_qt sqlite数据库操作_houxian1103的博客-CSDN博客 再谈QSqlQuery::exec: database not open问题的解决_qt database not open-CSDN博客…...

在idea中使用maven创建dynamic web project

1、先创建一个empty project 2、添加一个module , 核心是选择maven archetype webapp, 这个是maven提供的创建web工程的模版。 3、添加完等自动安装好即可 4、目录可能不完整 右键src---->点击New---->点击Directory &#xff08;注意&#xff1a;这是笔者所缺失的结…...

【外观模式】SpringBoot集成mail发送邮件

前言 发送邮件功能&#xff0c;借鉴 刚果商城&#xff0c;根据文档及项目代码实现。整理总结便有了此文&#xff0c;文章有不对的点&#xff0c;请联系博主指出&#xff0c;请多多点赞收藏&#xff0c;您的支持是我最大的动力~ 发送邮件功能主要借助 mail、freemarker以及rocke…...

GUAVA 工具类

Guava是一个Google的开源Java库&#xff0c;常用的工具&#xff1a; 集合工具类&#xff0c;包括Lists&#xff08;创建&#xff1a;newArrayList、newLinkedList等&#xff09;、Sets&#xff08;创建&#xff1a;newHashSet、newLinkedHashSet等&#xff09;和Maps&#xff…...

高云GW1NSR-4C开发板上手使用

1.开发板 核心板&#xff0c;主芯片GW1NSR-LV4CQN48P&#xff0c;丝印文字“奥陶纪Octet&#xff0c;QQ群808770961”&#xff1a; 晶振&#xff1a;27MHz&#xff0c;22引脚 两个按键&#xff1a;靠近中间&#xff0c;23引脚&#xff0c;按下为低电平&#xff1b;靠近外侧&…...

androidstudio设置内存

androidstudio一直 scanning files to index&#xff0c;需要去设置内存&#xff1a; 操作如下&#xff1a;...

[ 蓝桥杯Web真题 ]-Markdown 文档解析

目录 介绍 准备 目标 规定 思路 补充知识 解法参考 介绍 Markdown 因为其简洁的语法大受欢迎&#xff0c;已经成为大家写博客或文档时必备的技能点&#xff0c;众多博客平台都提倡用户使用 Markdown 语法进行文章书写&#xff0c;然后再发布后&#xff0c;实时的将其转化…...

flask web学习之flask与http(一)

文章目录 一、请求响应循环二、HTTP请求1. 请求报文2. request对象3. 在flask中处理请求3.1 路由匹配3.2 设置监听的http方法3.3 URL处理 三、请求钩子 一、请求响应循环 每一个web应用都包含这种处理方式&#xff0c;请求-响应循环&#xff1a;客户端发出请求&#xff0c;服务…...

蓝桥杯日期问题

蓝桥杯其他真题点这里&#x1f448; 注意日期合法的判断 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader;public class Main{static int[] days {0,31,28,31,30,31,30,31,31,30,31,30,31};static BufferedReader in new Buf…...

每天一点python——day90

#每天一点Python——90 #类的创建 创建类的语法&#xff1a; class 类名&#xff1a;pass【缩进之后写类里面的内容】 [类里面写什么没有想好之前&#xff0c;可以用pass进行占位.可以不报错]#演示&#xff1a; class Lei:pass #以上就上一个类被创建的样例注意事项&#xff1a…...

《巫师3》缺失vcomp110.dll如何解决,如何快速修复vcomp110.dll丢失问题

在日常使用电脑的过程中&#xff0c;我们可能会遇到一些错误提示&#xff0c;其中之一就是“vcomp110.dll丢失”。这个错误提示通常意味着vcomp110.dll文件在系统中无法找到或加载。那么&#xff0c;vcomp110.dll丢失的原因是什么&#xff1f;它对电脑有什么影响&#xff1f;本…...

LangChain学习二:提示-实战(上半部分)

文章目录 上一节内容&#xff1a;LangChain学习一&#xff1a;模型-实战学习目标&#xff1a;提示词及提示词模板的运用学习内容一&#xff1a;什么是提示词&#xff1f;学习内容二&#xff1a;提示词模板2.1 入门2.2 模板格式2.3 验证模板2.4 序列化提示模板2.5 将少量示例传递…...

SpringBoot集成i18n(多语言)

配置文件 spring: messages: basename: il8n/messages # 配置国际化资源文件路径 fallback-to-system-locale: true # 是否使用系统默认的语言环境作为备选项 国际化配置 import org.springframework.context.annotation.Bean; import org.spr…...

Volumetric Lights 2 HDRP

高清晰度渲染管道,包括先进的新功能,如半透明阴影图和直接灯光投射加上许多改进。 插件是一个快速,灵活和伟大的前瞻性光散射解决方案的高清晰度渲染管道。只需点击几下,即可改善场景中的照明视觉效果。 兼容: 点光源 聚光灯 碟形灯 矩形灯 通过覆盖摄像机周围大面积区域的…...

蓝桥杯 java基础

1. AB问题I 时间限制&#xff1a;2.000S 空间限制&#xff1a;32MB 题目描述 你的任务是计算ab。 输入描述 输入包含一系列的a和b对&#xff0c;通过空格隔开。一对a和b占一行。 输出描述 对于输入的每对a和b&#xff0c;你需要依次输出a、b的和。 如对于输入中的第二…...

火狐,要完了!

在过去几年中&#xff0c;关于Firefox 浏览器的衰落有过不少讨论。目前来说&#xff0c;很多公共的以及私营的大型网站都缺乏对Firefox的适当支持。但是Firefox也多次试图“自救”&#xff0c;甚至就在不久前&#xff0c;Mozilla 通过官博发文&#xff0c;表示 Firefox 在 2023…...

ai辅助开发:借助快马ai模型为直播应用添加弹幕情感分析与摘要生成功能

最近在开发一个直播应用时&#xff0c;发现弹幕互动是直播体验的重要组成部分&#xff0c;但海量弹幕中往往隐藏着观众的真实反馈和直播亮点。于是尝试用AI技术来增强直播应用的智能化功能&#xff0c;这里分享一下如何快速实现一个弹幕情感分析与摘要生成的工具页面。 项目构思…...

3个核心技巧:PS手柄无缝适配PC完全指南

3个核心技巧&#xff1a;PS手柄无缝适配PC完全指南 【免费下载链接】DS4Windows Like those other ds4tools, but sexier 项目地址: https://gitcode.com/gh_mirrors/ds/DS4Windows 对于拥有PS4/PS5手柄的玩家而言&#xff0c;在PC上实现完美适配一直是提升游戏体验的关…...

从梁模型到软体手指:Abaqus仿真进阶,如何为超弹性材料模型设置Ogden参数?

从梁模型到软体手指&#xff1a;Abaqus仿真进阶&#xff0c;如何为超弹性材料模型设置Ogden参数&#xff1f; 在工程仿真领域&#xff0c;线性分析往往只是起点。当面对像软体机器人手指这样的柔性结构时&#xff0c;传统梁模型已无法准确描述其大变形行为。硅胶等超弹性材料的…...

第21课:把 Qt 常用能力串成实战链路,打通文本、绘图、线程、网络与多媒体

本节路线图 为什么这节课看起来很散, → 先把程序的输入输出拿下: → 让界面真正活起来:`QP 兔兔建议 先顺着路线图跑一遍,再抄命令和代码,学习体验会轻松很多。 前两课我们已经把 Qt 的“界面底座”搭起来了,但真正做项目时,很多同学还是会卡在另一个问题上:界面会做了…...

DeOldify性能基准测试:不同GPU配置下的处理速度对比

DeOldify性能基准测试&#xff1a;不同GPU配置下的处理速度对比 最近在折腾老照片修复&#xff0c;用上了DeOldify这个工具。效果确实惊艳&#xff0c;能把黑白照片变得色彩鲜活。但有个问题一直困扰我&#xff1a;处理速度。一张照片等几分钟还能接受&#xff0c;要是批量处理…...

Qwen-Image镜像快速入门:手把手教你用RTX4090D搭建多模态AI开发环境

Qwen-Image镜像快速入门&#xff1a;手把手教你用RTX4090D搭建多模态AI开发环境 1. 开篇&#xff1a;为什么选择Qwen-Image镜像&#xff1f; 如果你正在寻找一个开箱即用的多模态AI开发环境&#xff0c;特别是针对RTX 4090D显卡优化的大模型推理方案&#xff0c;那么Qwen-Ima…...

SenseVoice Small模型可解释性:注意力权重可视化与关键语音片段定位

SenseVoice Small模型可解释性&#xff1a;注意力权重可视化与关键语音片段定位 1. 项目背景与意义 语音识别技术在日常生活中的应用越来越广泛&#xff0c;从智能助手到会议转录&#xff0c;从语音输入到多媒体内容处理&#xff0c;都离不开高效准确的语音转文字服务。Sense…...

关闭蜂鸣器与外设的初始化代码

针对蓝桥杯单片机开发中关闭蜂鸣器与外设的初始化操作&#xff0c;以及创建标准.h头文件的必备代码&#xff0c;以下是详细的技术方案与实现代码。 1. 蓝桥杯单片机系统初始化与外设关闭 蓝桥杯官方使用的CT107D开发板&#xff08;以IAP15F2K61S2单片机为核心&#xff09;&am…...

OpenClaw健康监测:用Phi-3-mini-128k-instruct分析智能手表数据

OpenClaw健康监测&#xff1a;用Phi-3-mini-128k-instruct分析智能手表数据 1. 为什么选择OpenClaw处理健康数据&#xff1f; 去年体检报告上的几项异常指标让我开始关注日常健康监测。虽然手环和智能手表能记录睡眠、心率等数据&#xff0c;但原始数据报表就像一本天书——我…...

为Qwen-VL“点亮”视觉思维:从注意力热力图洞察多模态对齐的深层逻辑

1. 理解Qwen-VL的视觉思维机制 当你第一次看到Qwen-VL这类视觉语言模型时&#xff0c;可能会好奇它究竟是如何"看"图片的。想象一下&#xff0c;你正在教一个小朋友看图说话&#xff1a;小朋友会先扫视整张图片&#xff0c;然后目光停留在某些关键区域&#xff0c;最…...