zoukankan      html  css  js  c++  java
  • skimage.io.imread与cv2.imread的区别

    欢迎关注WX公众号:【程序员管小亮】

    常见的两种读图方式skimage.io.imread()cv2.imread()

    1、skimage.io.imread

    io.imread读出图片格式是uint8(unsigned int);value是numpy array;图像数据是以RGB的格式进行存储的,通道值默认范围0-255。

    import cv2
    import matplotlib.pyplot as plt
    from skimage import transform 
    import numpy as np
    import skimage.io as io  
     
    train_dir = 'C:\Users\Administrator\代码TRY\1.jpg'
    
    '''以io.imread方式读取图片'''
    # 读图并显示。
    image = io.imread(train_dir)
    plt.imshow(image)
    

    2、cv2.imread

    cv2.imread读出的图片格式是uint8;value是numpy array;图像数据是以BGR的格式进行存储的,注意是BGR,通道值默认范围0-255,需要将存储类型改成RGB的形式才能正常显示原图的颜色。

    特别是制作tfrecord时,需要将图片通道改成RGB,具体代码如下:

    import cv2
    import matplotlib.pyplot as plt
    from skimage import transform 
    import numpy as np
    import skimage.io as io  
     
    train_dir = 'C:\Users\Administrator\代码TRY\1.jpg'
     
    '''以cv2方式读取图片'''
    image=cv2.imread(train_dir)
    # 将图像通道分离开。
    b,g,r = cv2.split(image)
    # 以RGB的形式重新组合。
    rgb_image = cv2.merge([r,g,b])
    # 也可以使用这个函数直接转换成RGB形式。
    # image = cv2.cvtColor(image, cv2.COLOR_BGR2RGB)
    plt.imshow(rgb_image)
    

    python课程推荐。
    在这里插入图片描述

  • 相关阅读:
    spring_three
    报错:java.sql.SQLException: The server
    Spring_two
    Spring_One
    Mybatis中的collection和association一关系
    Mybatis_three
    文件操作1
    面向对象编程三大特征7
    面向对象编程三大特征6
    面向对象编程三大特征5
  • 原文地址:https://www.cnblogs.com/hzcya1995/p/13302807.html
Copyright © 2011-2022 走看看