zoukankan      html  css  js  c++  java
  • python图像处理(3)图像的通道、变换和剪切

    1,通道

    from PIL import Image
    import matplotlib.pyplot as plt        # 可以理解为画板
    import numpy as np
    img = Image.open('c:/2.jpg')
    # 一:图像通道
    # 1.转化为灰度图的两种方法
    gray = img.convert('L')
    gray = np.array(gray)      # 将灰度图放在数组中(我)
    # *
    plt.figure("boy")
    plt.imshow(gray,cmap='gray')
    plt.axis('on') 
    plt.show()
    # 2.通道的合并与分离
    r,g,b = img.split()   # 分离成RGB三个通道。。提取R G B分量
    print('----',r)
    print(g)
    print(b)
    pic = Image.merge('RGB',(r,g,b))  # 合并通道
    # 这是原图
    plt.figure("beauty")
    plt.subplot(2,3,1), plt.title('origin')  # (x,c,v) 三个数字是可以调节的:  x:表示行   c:表示一行的列数   v:表示第几个
    plt.imshow(img),plt.axis('on')            # 原图 plt.axis是否显示坐标轴
    # 这就是转化为灰度图像
    plt.subplot(2,3,2), plt.title('gray')   # gray 灰色
    plt.imshow(gray,cmap='gray'),plt.axis('off')
    # RGB合并的图像
    plt.subplot(2,3,3), plt.title('merge')   # merge 合并
    plt.imshow(pic),plt.axis('off')
    # 红、绿、蓝三个通道的缩略图,都是以灰度显示的,用不同的灰度色阶来表示“ 红,绿,蓝”在图像中的比重。
    r = np.array(r)
    plt.subplot(2,3,4), plt.title('r')
    # plt.imshow(r,cmap='gray'),plt.axis('off')
    plt.imshow(r),plt.axis('off')
    
    g = np.array(g)
    plt.subplot(2,3,5), plt.title('g')
    plt.imshow(g),plt.axis('off')
    
    b = np.array(b)
    plt.subplot(2,3,6), plt.title('b')
    plt.imshow(b),plt.axis('off')
    
    plt.show()

     

  • 相关阅读:
    Django drf 功能组件
    Django drf 视图家族
    Django drf初级
    Django drf序列化器 Serializer
    VUE 全整理
    Django Xadmin的安装方式
    python virtualenv虚拟环境搭建
    版本控制器:操作流程
    版本控制器:GIT线上操作
    《剑指offer》---跳台阶问题
  • 原文地址:https://www.cnblogs.com/zhanghaiyan/p/9585094.html
Copyright © 2011-2022 走看看