opencv 图像缩放操作 - python 实现

图像缩放是经常采用的图像处理操作,以下示例用 opencv 实现。

具体代码如下:

python 复制代码
#-*-coding:utf-8-*-
# date:2021-03-20
# Author: DataBall - XIAN
# Function: 图像缩放

import cv2 # 导入OpenCV库

if __name__ == "__main__":

    path = 'images/test.jpg' # 图片路径

    img = cv2.imread(path)# 读取图片
    print("img shape : {}".format(img.shape))
    cv2.namedWindow('image',0)
    cv2.imshow('image',img) # 显示图片

    #------------------------------------------------------------------------------------------------
    # cv2.INTER_LINEAR,cv2.INTER_CUBIC,cv2.INTER_NEAREST,cv2.INTER_AREA,INTER_LANCZOS4 : 不同的查找方式
    img_r = cv2.resize(img, (256,256), interpolation = cv2.INTER_LINEAR) # 将原图缩放到尺寸 256*256 双线性插值(默认设置)
    print("img_r shape : {}".format(img_r.shape))
    cv2.namedWindow('INTER_LINEAR',0)
    cv2.imshow('INTER_LINEAR',img_r)
    #
    img_r = cv2.resize(img, (256,256), interpolation = cv2.INTER_CUBIC) # 将原图缩放到尺寸 256*256 4x4像素邻域的双三次插值
    cv2.namedWindow('INTER_CUBIC',0)
    cv2.imshow('INTER_CUBIC',img_r)
    #
    img_r = cv2.resize(img, (256,256), interpolation = cv2.INTER_NEAREST) # 将原图缩放到尺寸 256*256 最近邻插值
    cv2.namedWindow('INTER_NEAREST',0)
    cv2.imshow('INTER_NEAREST',img_r)
    #
    img_r = cv2.resize(img, (256,256), interpolation = cv2.INTER_AREA) # 将原图缩放到尺寸 256*256 使用像素区域关系进行重采样
    cv2.namedWindow('INTER_AREA',0)
    cv2.imshow('INTER_AREA',img_r)
    #
    img_r = cv2.resize(img, (256,256), interpolation = cv2.INTER_LANCZOS4) # 将原图缩放到尺寸 256*256 8x8像素邻域的Lanczos插值
    cv2.namedWindow('INTER_LANCZOS4',0)
    cv2.imshow('INTER_LANCZOS4',img_r)


    cv2.waitKey(0)
    cv2.destroyAllWindows() # 销毁所有显示窗口

​​

助力快速掌握数据集的信息和使用方式。

数据可以如此美好!

相关推荐
Freya冉冉2 分钟前
【PYTHON学习】推断聚类后簇的类型DAY18
python·学习·聚类
飞哥数智坊2 分钟前
不再记得代码细节?别慌,你正在经历 AI 时代的编程能力重塑
人工智能·ai编程
成子不是橙子22 分钟前
Langchain | Ollama | Python快速上手使用LLM的DEMO
开发语言·python·langchain·ollama
Juchecar23 分钟前
人工智能这一波浪潮会不一样吗?
人工智能
zzfive28 分钟前
Ovi-音视频生成模型
论文阅读·人工智能·深度学习·音视频
无风听海33 分钟前
神经网络之计算图
人工智能·深度学习·神经网络
摘星编程38 分钟前
RAG系统搭建指南:5种主流框架的易用性和效果对比
人工智能
荔园微风1 小时前
ML.NET机器学习框架基本流程介绍
人工智能·机器学习·.net
点云SLAM1 小时前
矩阵奇异值分解算法(SVD)的导数 / 灵敏度分析
人工智能·线性代数·算法·机器学习·矩阵·数据压缩·svd算法
仁懋-MOT半导体1 小时前
高效能源转换的关健|仁懋MOSFET在逆变器领域的突破应用
人工智能·硬件工程·能源·创业创新·制造