zoukankan      html  css  js  c++  java
  • Python中图像的缩放 resize()函数的应用

    cv2.resize(src, dsize[, dst[, fx[, fy[, interpolation]]]]) -> dst 

    参数说明:

    src - 原图

    dst - 目标图像。当参数dsize不为0时,dst的大小为size;否则,它的大小需要根据src的大小,参数fx和fy决定。dst的类型(type)和src图像相同

    dsize - 目标图像大小。当dsize为0时,它可以通过以下公式计算得出:

    所以,参数dsize和参数(fx, fy)不能够同时为0

    fx - 水平轴上的比例因子。当它为0时,计算公式如下:

    fy - 垂直轴上的比例因子。当它为0时,计算公式如下:

    interpolation - 插值方法。共有5种:

    1)INTER_NEAREST - 最近邻插值法

    2)INTER_LINEAR - 双线性插值法(默认)

    3)INTER_AREA - 基于局部像素的重采样(resampling using pixel area relation)。对于图像抽取(image decimation)来说,这可能是一个更好的方法。但如果是放大图像时,它和最近邻法的效果类似。

    4)INTER_CUBIC - 基于4x4像素邻域的3次插值法

    5)INTER_LANCZOS4 - 基于8x8像素邻域的Lanczos插值

    Python:

    参考:python opencv 图像尺寸变换 - http://www.xuebuyuan.com/1971769.html

    [python] view plain copy
     
    1. #!/usr/bin/env python  
    2. #-*- coding: utf-8 -*-  
    3.   
    4. """ 
    5. 重设图像大小。 
    6. 缩小图像,比例为(0.3, 0.5) 
    7. 放大图像,比例为(1.6, 1.2) 
    8. """  
    9.   
    10. __author__ = 'zj'  
    11.   
    12. import cv2  
    13. import os  
    14.   
    15. if __name__ == '__main__':  
    16.     img = cv2.imread("lena.jpg", -1)  
    17.     if img == None:  
    18.         print "Error: could not load image"  
    19.         os._exit(0)  
    20.       
    21.     height, width = img.shape[:2]  
    22.   
    23.     # 缩小图像  
    24.     size = (int(width*0.3), int(height*0.5))  
    25.     shrink = cv2.resize(img, size, interpolation=cv2.INTER_AREA)  
    26.       
    27.     # 放大图像  
    28.     fx = 1.6  
    29.     fy = 1.2  
    30.     enlarge = cv2.resize(img, (0, 0), fx=fx, fy=fy, interpolation=cv2.INTER_CUBIC)  
    31.   
    32.     # 显示  
    33.     cv2.imshow("src", img)  
    34.     cv2.imshow("shrink", shrink)  
    35.     cv2.imshow("enlarge", enlarge)  
    36.   
    37.     cv2.waitKey(0)  

  • 相关阅读:
    【正则】限定符-总
    【正则】字符类-总
    【正则】元字符-总
    【正则】基本知识点
    Linux 核心系统命令目录
    股票模型
    windows 批量删除用户
    cka 英文考试题
    cka 英文考试题
    李永乐说股票
  • 原文地址:https://www.cnblogs.com/jyxbk/p/7651241.html
Copyright © 2011-2022 走看看