zoukankan      html  css  js  c++  java
  • scipy笔记—scipy.misc.imresize用法(方便训练图像数据)

    scipy.misc.imresize

    不同于普通的reshape, imresize不是单纯的改变图像矩阵的维度,而是能将图片重采样为指定像素,这样给深度学习中训练图像数据带来方便。
    import numpy as np
    import matplotlib.pyplot as plt
    import h5py
    import scipy
    from PIL import Image
    from scipy import ndimage
    
    %matplotlib inline
    
    num_px = 64
    
    my_image = "my_image4.jpg"   # 修改你图像的名字
    
    fname = "images/" + my_image                              # 图片位置     
    image = np.array(ndimage.imread(fname, flatten=False))    # 读入图片为矩阵
    
    plt.imshow(image)

    # my_image = scipy.misc.imresize(image, size=(num_px, num_px)).reshape((1, num_px * num_px * 3)).T  # 转置图片为 (num_px*num_px*3, 1)向量
    
    # 重新设置图像像素 
    my_image = scipy.misc.imresize(image, size=(num_px, num_px))
    
    plt.imshow(my_image)

    2020.6.3日修改============================================================

    这个函数在新版本的scipy中不能用了,改成

    import imageio
    from skimage.transform import resize
    
    ## START CODE HERE ## (PUT YOUR IMAGE NAME) 
    my_image = "my_image4.jpg"   # 修改你图像的名字
    ## END CODE HERE ##
    
    # We preprocess the image to fit your algorithm.
    fname = "images/" + my_image                              # 图片位置     
    image = np.array(imageio.imread(fname))                   # 读入图片为矩阵, 这里用原版本的会出错,scipy的那个函数被删了
    print(image.shape)
    
    # 转置图片为 (num_px*num_px*3, 1)向量
    my_image = resize(image, output_shape=(num_px, num_px)).reshape((1, num_px * num_px * 3)).T
    print(my_image)

  • 相关阅读:
    将eclipse的编码设置成UTF-8
    git提交代码时报rejected
    Vue.js
    快速计算进制之间的转换
    android中canvas.drawText参数的介绍以及绘制一个文本居中的案例
    progressbar原始效果
    面试问题总结
    Android Material Design学习日志
    Android进阶之解决RecyclerView notifyItem闪屏问题
    Android TextView行间距解析
  • 原文地址:https://www.cnblogs.com/douzujun/p/10280213.html
Copyright © 2011-2022 走看看