python图片通道分离

文章目录:

  • 一、通道分离的方法
    • 1、opencv的split()函数
    • 2、使用Numpy 数组分离图像通道
  • 二、通道合并的方法
    • 1、opencv自带的merge() 函数
    • 2、使用Numpy 方法

一、通道分离的方法

1、opencv的split()函数

注 意:
opencv的cv2.imread() 函数的第二个参数一般有三个可选值,可以是数值 1, 0, -1, 也可以是参数,都是等价的
第二个参数是一个标志位,用来指定打开的方式。

  • cv2.IMREAD_COLOR1: 加载一个彩色图片。图片的透明度会被忽略,这个是默认标志
  • cv2.IMREAD_GRAYSCALE0: 用灰度模式加载图片
  • cv2.IMREAD_UNCHANGED-1: 包含alpha通道的方式加载图片

#!/usr/bin/env python
# encoding: utf-8  import cv2
import numpy as np  img = cv2.imread("mini.jpg", 1)
b,g,r = cv2.split(img)
cv2.imshow("Blue",r)
cv2.imshow("Red",g)
cv2.imshow("Green",b)
cv2.waitKey(0)
cv2.destroyAllWindows()# 也可以单独返回其中一个通道b = cv2.split(img)[0]  # B通道
g = cv2.split(img)[1]  # G通道
r = cv2.split(img)[2]  # R通道

注 意:
png图片并不一定是四通道的,如果不是四通道的图片,保存成png格式也还只是三通道

2、使用Numpy 数组分离图像通道

#!/usr/bin/env python
# encoding: utf-8  import cv2
import numpy as np  #使用Numpy 数组来实现图像通道分离
img = cv2.imread("mini.jpg")
# 创建3个跟图像一样大小的矩阵,数值全部为0
b = np.zeros((img.shape[0],img.shape[1]),dtype=img.dtype)
g = np.zeros((img.shape[0],img.shape[1]),dtype=img.dtype)
r = np.zeros((img.shape[0],img.shape[1]),dtype=img.dtype)#复制图像通道里的数据
b[:,:] = img[:,:,0]  # 复制 b 通道的数据
g[:,:] = img[:,:,1]  # 复制 g 通道的数据
r[:,:] = img[:,:,2]  # 复制 r 通道的数据cv2.imshow("Blue",b)
cv2.imshow("Red",r)
cv2.imshow("Green",g)
cv2.waitKey(0)
cv2.destroyAllWindows()

二、通道合并的方法

1、opencv自带的merge() 函数

merged = cv2.merge([b,g,r]) #前面分离出来的三个通道

2、使用Numpy 方法

merged = np.dstack([b,g,r])

python图片通道分离相关推荐

  1. OpenCV Python教程(2、图像元素的访问、通道分离与合并)

    OpenCV Python教程之图像元素的访问.通道分离与合并 转载请详细注明原作者及出处,谢谢! 访问像素 像素的访问和访问numpy中ndarray的方法完全一样,灰度图为: [python] v ...

  2. OpenCV之Python学习笔记(1)(2): 图像的载入、显示和保存 图像元素的访问、通道分离与合并

    OpenCV之Python学习笔记 一直都在用Python+OpenCV做一些算法的原型.本来想留下发布一些文章的,可是整理一下就有点无奈了,都是写零散不成系统的小片段.现在看到一本国外的新书< ...

  3. 图片的色彩空间转换、简单色彩跟踪与通道分离、合并(三)

    一 图片的色彩空间转换 灰度色彩空间 单通道,取值范围[0,255] 0黑255白 RGB色彩空间(opencv中习惯用BGR) opencv中R,G,B三通道取值范围均为[0,255]. HSV/H ...

  4. python图片保存和图片展示顺序_【IT专家】【 python 】 —— 数据预处理:(1) 读取与显示图片 + 图像通道顺序变换...

    本文由我司收集整编,推荐下载,如有疑问,请与我司联系 [ python ] -- 数据预处理: (1) 读取与显示图片 + 图像通道顺 序变换 2018/05/31 29 # ---- 用 OPENC ...

  5. OpenCV数字图像处理(5) 像素访问之添加椒盐实例 通道分离与合并

    [转载请注明出处:http://blog.csdn.net/leytton/article/details/35991945] 配套使用的OpenCV版本:2.4.9 ; Python版本:2.7 主 ...

  6. python图片识别-Python+Opencv识别两张相似图片

    在网上看到python做图像识别的相关文章后,真心感觉python的功能实在太强大,因此将这些文章总结一下,建立一下自己的知识体系. 当然了,图像识别这个话题作为计算机科学的一个分支,不可能就在本文简 ...

  7. OpenCV与图像处理学习一——图像基础知识、读入、显示、保存图像、灰度转化、通道分离与合并

    OpenCV与图像处理学习一--图像基础知识.读入.显示.保存图像.灰度转化.通道分离与合并 一.图像基础知识 1.1 数字图像的概念 1.2 数字图像的应用 1.3 OpenCV介绍 二.图像属性 ...

  8. python图片识别是否p过_Python+Opencv进行识别相似图片

    标签:在网上看到python做图像识别的相关文章后,真心感觉python的功能实在太强大,因此将这些文章总结一下,建立一下自己的知识体系. 当然了,图像识别这个话题作为计算机科学的一个分支,不可能就在 ...

  9. python 图片处理模块_python Image 模块处理图片

    Python-Image 基本的图像处理操作,有需要的朋友可以参考下. Python 里面最常用的图像操作库是 pip install Pillow #安装模块fromPIL import Image ...

最新文章

  1. 基于JDK1.8---HashMap源码分析
  2. TensorFlow练习25: 使用深度学习做阅读理解+完形填空
  3. PostgreSQL教程(二):SQL语言
  4. 如何评价三国里的袁绍
  5. linux下oracle数据库升级,Oracle数据库在LinuxAS4升级
  6. python标准类型内建函数_Python 标准库系列之内建函数
  7. linux :Docker 方式 安装 zookeeper、阿里服务器上 Docker 运行 zookeeper
  8. android客户端在多个界面切换时保持socket的链接的实例
  9. 论文浅尝 | 通过知识到文本的转换进行知识增强的常识问答
  10. 配置hosts快速访问GitHub
  11. 文档加载完成覆盖_在完成文档之前,作业尚未完成
  12. windows IDA 调试SO
  13. 麻瓜python视频教程_麻瓜编程Python Web基础视频教程
  14. 做了三年Java,java简历包装项目经验
  15. 电脑麦克风,详细教你电脑麦克风没声音怎么设置
  16. Photoshopnbsp;CS5抠图实例:超快的抠图…
  17. [堆利用:TCache机制]HITB CTF 2018:gundam
  18. 两张图搞懂:共模干扰和差模干扰
  19. java候选码计算的替换法_数据库闭包和候选码求解方法
  20. 小程序实现身份证取景框拍摄-uniapp版

热门文章

  1. 当PullToRefreshScrollView里面嵌套ListView
  2. ORACLE基础知识
  3. python写出的程序如何给别人使用-利用这10个工具,你可以写出更好的Python代码...
  4. python类相关的研究生专业-为什么很多大学生甚至研究生抛弃专业去做码农呢?...
  5. python编程快速入门例子-清华大学出版社-图书详情-《Python编程入门与案例详解》...
  6. python能参加奥赛吗-家长们注意了!关于信息学奥赛(NOIP),你需要知道这些...
  7. python基础教程3-Python基础教程(三)
  8. python画图颜色-python中matplotlib的颜色及线条控制的示例
  9. python经典好书-python经典书籍推荐
  10. python变量类型-python变量的数据类型有哪些?