导包:

import numpy as np
import cv2
import matplotlib.pyplot as plt
def show(image):
plt.imshow(image)
plt.axis('off')
plt.show()
def imread(image):
image=cv2.imread(image)
image=cv2.cvtColor(image,cv2.COLOR_BGR2RGB)
return image

RGB当中每一个颜色都有256阶亮度,每一阶都对应着一个亮度:

image=imread("123.jpg")
(R,G,B)=cv2.split(image)#这里将通道进行拆分
print(image.shape)
print(image.shape[:2])
zeros=np.zeros(image.shape[:2],dtype='uint8')#这里只取了图像三要素当中的前面部分,毕竟通道拆分之后其颜色空间就仅有一个了
show(cv2.merge([R,zeros,zeros]))
show(cv2.merge([zeros,G,zeros]))
show(cv2.merge([zeros,zeros,B]))#merge是将通道进行合并

颜色空间的HSV模型。 H代表的是颜色的色调,一共从0—360度。每一度代表这不同的颜色模型 S:代表饱和度,饱和度的取值范围是%0—100,如果饱和度越大,则白色的占有率越小,颜色则越饱满,饱和度越小则白色越明显。 V:代表明度,取值是%0——100,0表示的最黑,100表示的是最亮

#由于我们在opencv当中的颜色最开始都是采用的是BGR的模式,然后我们之前编写的函数将BGR转换成了RGB的模式,但是在这里我们需要重新将RGB的格式
#更改为HSV的格式才对
image=imread("123.jpg")
hsv=cv2.cvtColor(image,cv2.COLOR_RGB2HSV)
print(image.shape)
print(image.shape[:2])
zeros=np.zeros(image.shape[:2],dtype='uint8')#这里只取了图像三要素当中的前面部分,毕竟通道拆分之后其颜色空间就仅有一个了
for (name,chan) in zip(('H','S','V'),cv2.split(hsv)):
cv2.imshow(name,chan)
cv2.waitKey(0)
cv2.destroyAllWindows()

下面展示灰度图的显示,这个在我们图像处理当中的是最为常用的:

image=cv2.imread("123.jpg")#这里用自带的方法读取图片就不会出现图片显示不正确的结果了
gray=cv2.cvtColor(image,cv2.COLOR_BGR2GRAY)
cv2.imshow('original',image)
cv2.imshow('gray',gray)
cv2.waitKey(0)
cv2.destroyAllWindows()

OpenCV:图像的颜色空间转换的更多相关文章

  1. opencv学习笔记——颜色空间转换函数cv::cvtColor详解

    cv::cvtColor()用于将图像从一个颜色空间转换到另一个颜色空间的转换(目前常见的颜色空间均支持),并且在转换的过程中能够保证数据的类型不变,即转换后的图像的数据类型和位深与源图像一致. 具体 ...

  2. Python-OpenCV中图像颜色空间转换

    目录 cv2.cvtColor() 1. RGB to GRAY 2. RGB to CIE XYZ 3. RGB to YCrCb JPEG 4. RGB to HSV 5. RGB to HLS ...

  3. OpenCV学习笔记(5)——颜色空间转换

    学习如歌对图像进行颜色空间转换,从BGR到灰度图,或者从BGR到HSV等 创建一个程序用来从一幅图像中获取某个特定颜色的物体 1.转换颜色空间 OpenCV中有超过150种进行颜色空间转化的方法,但是 ...

  4. python数字图像处理(4):图像数据类型及颜色空间转换

    一.图像数据类型及转换 在skimage中,一张图片就是一个简单的numpy数组,数组的数据类型有很多种,相互之间也可以转换.这些数据类型及取值范围如下表所示: Data type Range uin ...

  5. 颜色空间转换 cvtColor()[OpenCV 笔记13]

    void cvtColor(InputArray src, OutputArray dst, ) src: 输入图像 dst: 输出图像 code: 颜色空间转换标识符 OpenCV2的CV_前缀宏命 ...

  6. OpenCV 的颜色空间转换

    # coding: utf-8 ''' 第13章主要介绍:颜色空间转换 ''' import cv2 import numpy as np ''' 经常用到的颜色空间转换是: BGR<-> ...

  7. opencv IplImage各参数详细介绍以及如何从一个JPEG图像数据指针转换得到IplImage

    这篇文章里介绍得最清楚了.http://blog.chinaunix.net/uid-22682903-id-1771421.html 关于颜色空间  RGB颜色空间已经非常熟悉了.HSV颜色空间需要 ...

  8. OpenCV 学习笔记(10)HSV颜色空间及颜色空间转换(RGB-HSV)

    1.1 颜色空间介绍 RGB 颜色空间是大家最熟悉的颜色空间,即三基色空间,任何一种颜色都可以由该三种 颜色混合而成.然而一般对颜色空间的图像进行有效处理都是在 HSV 空间进行的,HSV(色 调 H ...

  9. OpenCV中IplImage图像格式与BYTE图像数据的转换

    最近在将Karlsruhe Institute of Technology的Andreas Geiger发表在ACCV2010上的Efficent Large-Scale Stereo Matchin ...

随机推荐

  1. Android 警告对话框 AlertDialog

    @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); s ...

  2. 搭建API Mock

    所需环境 Node.js + MySQL 5.7+ Redis 4.0+ Node.js 安装 .要安装nvm,需要安装构建源包所需的工具,CentOS 上安装,用这些命令来安装构建工具: sudo ...

  3. CentOS7环境下安装docker

    操作系统 : CentOS7.5.1804_x64 docker版本: docker-ce-18.06.3 准备环境 1.如之前安装过移除老旧版本 yum remove docker docker-c ...

  4. 为用户分配有效期程序-更新数据库的TRY使用

    REPORT ZPMRP030. TABLES:USR02. DATA: L_ERROR TYPE REF TO CX_SY_OPEN_SQL_DB, L_ERROR_TEXT TYPE STRING ...

  5. C#中的时间戳

    来源:https://blog.guoqianfan.com/2019/11/24/timestamp-in-csharp/ 什么是时间戳 时间戳默认是Unix时间戳. 首先要清楚JavaScript ...

  6. amazon爬取流程与思路

    第一步:访问分类页面 https://www.amazon.in//gp/site-directory?ref=nav_em_ajax_fail #抓包获得 第二步:获取分类页面下各个分类的url 如 ...

  7. How to: Implement a Custom Base Persistent Class 如何:实现自定义持久化基类

    XAF ships with the Business Class Library that contains a number of persistent classes ready for use ...

  8. 前端最佳实践——DOM操作

    1.浏览器渲染原理 在讲DOM操作的最佳性能实践之前,先介绍下浏览器的基本渲染原理. 分为以下四个步骤: 解析HTML(HTML Parser) 构建DOM树(DOM Tree) 渲染树构建(Rend ...

  9. digitalworld.local:Torment Vulnhub Walkthrough

    主机层面扫描: ╰─ nmap -p1-65535 -sV -A 10.10.202.135Starting Nmap 7.70 ( https://nmap.org ) at 2019-08-09 ...

  10. AWS云EC2(RHEL7)添加网络接口与路由调整

    AWS云EC2(RHEL7)添加网络接口与路由调整 Amazon Linux(类似RHEL6,Centos6) 以及 RHEL7 修改MAC地址的说明 RHEL7 Centos7 添加路由 解决RHE ...