Python中使用cv2.resize()函数批量自定义缩放图像尺寸

news2024/10/1 7:32:00

目录

  • 常用插值缩放方法
  • 缩放示例
  • 代码
  • 总结

常用插值缩放方法

cv2.resize()函数中的interpolation参数指定了图像缩放时使用的插值方法。以下是常用的插值方法:

cv2.INTER_NEAREST:最近邻插值。该方法通过选择最接近目标像素的原始像素来进行插值。它是最快速的插值方法,但可能会导致锯齿状边缘效果。

cv2.INTER_LINEAR:双线性插值。该方法通过使用原始像素的线性组合来计算目标像素的值。它比最近邻插值提供了更平滑的结果,但在缩小图像时可能会丢失细节。

cv2.INTER_CUBIC:双三次插值。该方法在双线性插值的基础上使用了更多的邻近像素,以获得更高质量的缩放结果。它比双线性插值计算量更大,但效果更好。

cv2.INTER_LANCZOS4:Lanczos插值。该方法使用Lanczos算法来计算目标像素的值。它在缩放图像时提供了更好的保真度,但计算量较大。

缩放示例

在这里插入图片描述

代码


import os
import cv2

# 获取文件路径
folder_path = "E:/SR_Images/DIV2K_theml/DIV2K_train_HR"
output_path = "E:/SR_Images/DIV2K_theml/DIV2K_train_LR_bicubic/X2"

# 获取文件夹中所有的文件
file_list = os.listdir(folder_path)

# 遍历文件列表
for file_name in file_list:
    # 拼接文件路径
    file_path = os.path.join(folder_path,file_name)

    # 仅处理图像文件
    if os.path.isfile(file_path) and file_name.lower().endswith(('.png',',jpg','.jpeg','.bmp')):
        # 读取图像路径
        image = cv2.imread(file_path)

        # 获取图像原尺寸
        height,width = image.shape[:2]

        # 计算缩放后的尺寸
        new_heiht = int(height / 2)
        new_width = int(width / 2)

        # 缩放图像
        resized_image = cv2.resize(image,(new_width,new_heiht),interpolation=cv2.INTER_CUBIC)  # 例子中使用了双三次插值

        # 保存缩放后的图像
        output_file = file_name[:-4] + "x2.png"
        cv2.imwrite(os.path.join(output_path,output_file),resized_image)

总结

以上就是使用cv2.resize()函数批量自定义缩放图像尺寸的方法,学者根据自己的缩放需求使用对应的缩放参数,多多支持,谢谢!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1129187.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

javaEE -8(9000字详解网络编程)

一:网络编程基础 1.1 网络资源 所谓的网络资源,其实就是在网络中可以获取的各种数据资源,而所有的网络资源,都是通过网络编程来进行数据传输的。 用户在浏览器中,打开在线视频网站,如优酷看视频&#xff…

管理类联考——英语二——阅读篇——题材:环保

文章目录 环保2017 年,Text 4——题材:环保-社会细节题-第一步定位;第二步原文复现细节题-推理细节题-人物观点细节题-原因-原词重现,同义替换细节题-人物观点-排除法 2019 年,Text 4——题材:社会-环保细节…

智慧公厕建设方案 - 点击进入

随着城市化进程的不断推进,传统公共厕所的管理问题变得越来越突出。封闭空间、脏乱差的环境以及管理不善所带来的恶臭和卫生问题,成为城市居民心中的痛点。为了解决这一问题,广州中期科技有限公司全新推出了智慧公厕建设方案,以引…

IDEA配置HTML和Thymeleaf热部署开发

IDEA配置HTML和Thymeleaf热部署开发 1.项目配置2. IDEA配置3. 使用 需求:现在我们在开发不分离项目的时候(SpringBootThmeleaf)经常会改动了类或者静态html文件就需要重启一下服务器, 这样不仅时间开销很大,而且经常重…

云数据库及RDS数据库介绍

1.云数据库概念 云数据库是指被优化或部署到一个虚拟计算环境中的数据库,具有按需付费、按需扩展、高可用性以及存储整合等能力。 2.云数据库特性 云数据库的特性有:实例创建快速、支持只读实例、读写分离、故障自动切换、数据备份、Binlog备份、SQL审…

基于OFDM的通信系统模拟实现

文章目录 前言一、OFDM 基本知识1、OFDM 理论知识及仿真2、OFDM 调制3、OFDM 解调 二、2ASK(二进制振幅键控)1、2ASK 基本原理①、OOK②、2ASK 2、2ASK/OOK 信号产生方法3、2ASK/OOK 信号解调方法 三、基于 OFDM 的通信系统模拟实现1、整体流程2、MATLAB…

力扣-python-两数相加

题解 1: # Definition for singly-linked list. # class ListNode(object): # def __init__(self, val0, nextNone): # self.val val # self.next nextclass Solution(object):def addTwoNumbers(self, l1, l2):""":type l1: ListNode:t…

数据结构:阶段测试(查漏补缺)

目录 选择题: 题一: 题二: 题三: 题四: 编程题: 题一:左叶子之和 思路一: 题二:约瑟夫问题(用单链表实现) 思路一: 本人实…

Redis设计与实现(3)字典

Redis的字典使用哈希表作为底层实现,一个哈希表里面可以有多个哈希表节点,而每一个哈希表节点就保存了字典中的一个键值对 redis字典所使用的哈希表由dict.h/dictht typedef struct dictht{//哈希表数组dictEntry **table;//哈希表大小unsigned long si…

【MATLAB源码-第56期】基于WOA白鲸优化算法和PSO粒子群优化算法的三维路径规划对比。

操作环境: MATLAB 2022a 1、算法描述 1.粒子群算法(Particle Swarm Optimization,简称PSO)是一种模拟鸟群觅食行为的启发式优化方法。以下是其详细描述: 基本思想: 鸟群在寻找食物时,每只鸟都…

Unity游戏开发中打造游戏攻击技能架构与设计

一、技能系统的设计 在 MOBA 游戏中,每个英雄角色都会有多个技能,这些技能可以分为普通攻击和技能攻击两种。普通攻击是英雄角色的基本攻击方式,而技能攻击则需要消耗一定的资源(如蓝量)才能使用。在设计技能系统时&a…

《数字图像处理》作业一:题目+学习笔记

Hi,学习进步,共同加油💪 1、选择题 (每小题3分,总计24分) (1)下列哪种图像属于数字图像( ) A、电影胶片;B、普通照片;C、手机拍照;D、眼前看到的景物 数字图像是由离散的像素点组成的图像,可以通过数值表示。根据选项,可以排除A(电影胶片)和B(普通…

【力扣刷题】删除链表的倒数第 N 个结点、两两交换链表中的节点、随机链表的复制

🐌个人主页: 🐌 叶落闲庭 💨我的专栏:💨 c语言 数据结构 javaEE 操作系统 Redis 石可破也,而不可夺坚;丹可磨也,而不可夺赤。 刷题篇 一、删除链表的倒数第 N 个结点1.1 …

一起学数据结构(12)——归并排序的实现

1. 归并排序原理: 归并排序的大概原理如下图所示: 从图中可以看出,归并排序的整体思路就是把已给数组不断分成左右两个区间,当这个区间中的数据数量到达一定数值时,便返回去进行排序,整体的结构类似二叉树…

【Master公式】对于这一类符合的递归可以直接确定时间复杂度

Master公式 T(N) a T(N/b) O(N^d) 对于这一类符合的递归可以直接确定时间复杂度 a,b,c为常数 1、子问题调用了a次 2、子问题的规模一致,N/b指每个子问题处理总规模/b个规模(只看规模,常数个忽略,如L,mid,mid1,R) 3、…

【Airflow】构建爬虫任务系统

爬虫脚本太多了需要进行管理一下,领导决定使用airflow 我了解了一下这个平台是用来做任务调度。 是一个ETL工具 ETL是将业务系统的数据经过抽取、清洗转换之后加载到数据仓库的过程 这里是一个github的地址 https://github.com/apache/airflow 这里是官方文档 http…

手机桌面待办事项APP推荐

每天,我们每个人都面临着繁琐的事务和任务,而手机成了我们日常生活中不可或缺的伙伴。手机上的待办事项工具像一个可靠的助手,可以帮助我们更好地记录、管理和完成任务。在手机桌面上使用的待办事项APP推荐用哪一个呢? 手机是我们…

【QT】信号和槽

一、前置示例代码 main.cpp #include "widget.h"#include <QApplication>int main(int argc, char *argv[]) {QApplication a(argc, argv); // 应用程序对象a&#xff0c;在Qt中&#xff0c;应用程序对象&#xff0c;有且仅有一个。Widget w; // 窗口对…

python sqlalchemy(ORM)- 02 表关系

文章目录 表关系ORM表示 1v1ORM表示 1vm 表关系 1:1&#xff0c;表A 中的一条记录&#xff0c;仅对应表B中的一条记录&#xff1b;表B的一条记录&#xff0c;仅对应表A的一条记录。1:m&#xff0c;表A中的一条记录&#xff0c;对应表B中的多条记录&#xff0c;表B中的一条记录…

编译原理-词法分析器

文章目录 对于词法分析器的要求概念词法分析器的功能和输出形式 词法分析器的设计词法分析器的结构单词符号的识别&#xff1a;超前搜索状态转换图 正规表达式和有限自动机正规式和正规集确定有限自动机&#xff08;DFA&#xff09;非确定有限自动机&#xff08;NFA&#xff09…