python怎么读取图片?

新手刚学python,在图片的读取方面遇到了问题,python怎么读取图片,希望有好心人能教教我。

  • Python
  • Python    采纳为最佳   2019-06-05 14:32:02 1楼

    python读取图片有5种方法Python基础教程

    方法一:利用PIL中的Image函数,这个函数读取出来不是array格式

    这时候需要用 np.asarray(im) 或者np.array()函数

    区别是 np.array() 是深拷贝,np.asarray() 是浅拷贝

    from PIL import Image
    import numpy as np
     
    I = Image.open('./cc_1.png') 
    I.show()    
    I.save('./save.png')
    I_array = np.array(I)
    print I_array.shape

    方法二:利用matplotlib.pyplot as plt用于显示图片

    # matplotlib.image as mpimg 用于读取图片
    # 并且读取出来就是array格式
    import matplotlib.pyplot as plt
    import matplotlib.image as mpimg
    import numpy as np
    I = mpimg.imread('./cc_1.png')
    print I.shape
    plt.imshow(I)

    方法三:利用opencv-python接口

    #cv2.imread()读出来同样是array形式,但是如果是单通道的图,读出来的是三通道的
    import cv2
    I = cv2.imread('./cc_1.png')
    print I.shape

    方法四:图像的存取也可以用scipy库里的东西,读出来是矩阵形式,并且按照(H,W,C)形式保存

    import matplotlib.pyplot as plt
    from scipy import misc
    import scipy
    I = misc.imread('./cc_1.png')
    scipy.misc.imsave('./save1.png', I)
    plt.imshow(I)
    plt.show()

    方法五:用skimage

    from skimage import io,data
    img=data.lena()
    io.imshow(img)


    + 添加回复

  • 回复