【计算机视觉(4)】

news2024/10/6 18:34:41

基于Python的OpenCV基础入门——色彩空间转换

  • 色彩空间简介
    • HSV色彩空间
    • GRAY色彩空间
    • 色彩空间转换
  • 色彩空间转换代码实现:

色彩空间简介

色彩空间是人们为了表示不同频率的光线的色彩而建立的多种色彩模型。常见的色彩空间有RGB、HSV、HIS、YCrCb、YUV、GRAY,其中最常用的是RGB、HSV、GRAY。彩色图像RGB在机器中的颜色显示,是基于三基色而言的,三基色指的是红色、绿色和蓝色。

HSV色彩空间

HSV色彩空间是一种常用的色彩表示方式,它是根据颜色的直觉特性来定义的。HSV分别代表色调(Hue)、饱和度(Saturation)和明度(Value),也称为色相、饱和度和亮度。HSV色彩空间与RGB色彩空间有相互转换的关系。

色调(Hue)表示颜色的种类,可以想象为一个颜色环,具体的颜色通过角度来表示。色调的取值范围为0°到360°,其中0°和360°对应红色,120°对应绿色,240°对应蓝色。

饱和度(Saturation)表示颜色的纯度或强度,越大表示颜色越鲜艳,越小表示颜色越灰暗。饱和度的取值范围为0%~100%,其中0%表示灰色,100%表示最鲜艳的颜色。

明度(Value)表示颜色的亮度,越大表示颜色越亮,越小表示颜色越暗。明度的取值范围为0%~100%,其中0%表示黑色,100%表示白色。
在这里插入图片描述

HSV色彩空间的优点是更符合人类对颜色的感知,易于理解和调整,常用于图像处理、图形设计等领域。

GRAY色彩空间

GRAY色彩空间是一种常见的色彩空间,用于表示灰度图像。在GRAY色彩空间中,每个像素的颜色只由一个灰度值来表示,灰度值范围一般是0-255,其中0表示黑色,255表示白色。

色彩空间转换

image = cv2.cvtColor(src, code)
参数:
src:转换前的原始图像。
code:色彩空间转换码
常用的转换码: cv.COLOR_BGR2RGB # BGR 转换为RGB图像
cv.COLOR_BGR2GRAY # BGR 转换为灰度图像
cv.COLOR_BGR2HSV # BGR 转换为 HSV 图像

色彩空间转换代码实现:

利用OpenCV进行读取,使用matplotlib进行显示

import cv2                       #导入OpenCV模块  
import matplotlib.pyplot as plt # 导入matplotlib库  
image = cv2.imread("./img/cat.jpg") # 导入图片  
plt.imshow(image) # 使用matplotlib显示    
plt.show()        # 显示图像  

代码效果图如下:
在这里插入图片描述
如果使用OpenCV读取一张图片,经过一系列操作后,用Pillow或者matplotlib进行显示图像,此时显示的图片为蓝色,这是由于Opnecv颜色通道顺序为BGR所导致,所以我们需要进行色彩空间转换:

import cv2                       #导入OpenCV模块  
import matplotlib.pyplot as plt # 导入matplotlib库  
image = cv2.imread("./img/cat.jpg") # 导入图片  
img = cv2.cvtColor(image, cv2.COLOR_BGR2RGB)  # 色彩空间BGR转RGB  
plt.imshow(img) # 使用matplotlib显示    
plt.show()        # 显示图像  

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1707497.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Sora,数据驱动的物理引擎

文生视频技术 Text-to-Video 近日,Open AI发布文生视频模型Sora,能够生成一分钟高保真视频。人们惊呼:“真实世界将不再存在。” Open AI自称Sora是“世界模拟器”,让“一句话生成视频”的AI技术向上突破了一大截,引…

数据恢复与取证软件: WinHex 与 X-Ways Forensics 不同许可证功能区别

天津鸿萌科贸发展有限公司从事数据安全业务20余年,在数据恢复、数据取证、数据备份等领域有丰富的案例经验、专业技术及良好的行业口碑。同时,公司面向取证机构及数据恢复公司,提供数据恢复实验室建设方案,包含数据恢复硬件设备及…

外贸仓库管理软件:海外仓效率大幅度提升、避免劳动力积压

随着外贸业务的不断发展,如何高效管理外贸仓库,确保货物顺利流转,订单顺利处理,就变得非常重要。 现在通常的解决方案都是通过引入外贸仓库管理软件,也就是我们常说的海外仓WMS系统来解决。 今天我们就系统的探讨一下…

闲话 .NET(3):.NET Framework 的缺点

前言 2016 年,微软正式推出 .NET Core 1.0,并在 2019 年全面停止 .NET Framework 的更新。 .NET Core 并不是 .NET Framework 的升级版,而是一个从头开始开发的全新平台,一个跟 .NET Framework 截然不同的开源技术框架。 微软为…

Paddle 稀疏计算 使用指南

Paddle 稀疏计算 使用指南 1. 稀疏格式介绍 1.1 稀疏格式介绍 稀疏矩阵是一种特殊的矩阵,其中绝大多数元素为0。与密集矩阵相比,稀疏矩阵可以节省大量存储空间,并提高计算效率。 例如,一个5x5的矩阵中只有3个非零元素: impor…

CTFHUB技能树——SSRF(一)

目录 一、SSRF(服务器端请求伪造) 漏洞产生原理: 漏洞一般存在于 产生SSRF漏洞的函数(PHP): 发现SSRF漏洞时: SSRF危害: SSRF漏洞利用手段: SSRF绕过方法: 二、CTFHUB技能树 SSRF 1.Ht…

线上服务突然变慢,卡了很久都出不来

文章目录 0、架构1、现象2、查看服务器指标2.1 cpu负载不高2.2 内存指标2.3 硬盘指标2.4 错误日志2.5 大量的tcp连接为TIME_WAIT 3、总结 0、架构 nginx—>httpd—>postgres 单体服务 1、现象 进入页面非常慢。。。 2、查看服务器指标 2.1 cpu负载不高 如下图&…

vue3学习(三)

前言 继续接上一篇笔记,继续学习的vue的组件化知识,可能需要分2个小节记录。前端大佬请忽略,也可以留下大家的鼓励,感恩! 一、理解组件化 二、组件化知识 1、先上知识点: 2、示例代码 App.vue (主页面) …

Captura完全免费的电脑录屏软件

一、简介 1、Captura 是一款免费开源的电脑录屏软件,允许用户捕捉电脑屏幕上的任意区域、窗口、甚至是全屏画面,并将这些画面录制为视频文件。这款软件具有多种功能,例如可以设置是否显示鼠标、记录鼠标点击、键盘按键、计时器以及声音等。此…

BookxNote Pro 宝藏 PDF 笔记软件

一、简介 1、BookxNote Pro 是一款专为电子书阅读和学习笔记设计的软件,支持多种电子书格式,如PDF和EPUB,能够帮助用户高效地管理和阅读电子书籍,同时具备强大的笔记功能,允许用户对书籍内容进行标注、摘录和思维导图绘…

解锁数据奥秘,SPSS for Mac/WIN助您智赢未来

在信息爆炸的时代,数据已成为推动社会进步和企业发展的核心动力。但如何将这些海量数据转化为有价值的洞见,却是摆在每一位决策者面前的难题。IBM SPSS Statistics,一款专业的统计分析软件,凭借其强大的功能和易用的界面&#xff…

机械产品3d模型网站让您的展示内容更加易于分享和传播

为助力企业3D产品演示网站获得更多曝光和展示特效,华锐视点3D云展平台提供强大的3D编辑引擎,以逼真的渲染效果,让您的模型展示更加生动逼真。让客户也能轻松操作的3D产品演示网站搭建编辑器,引领3D展示的新潮流。 3D产品演示网站搭…

总结 HTTP 协议的基本格式

一、HTTP 是什么 HTTP ( 全称为 " 超文本传输协议 ") 是一种应用非常广泛的 应用层协议 . HTTP 诞生与 1991 年 . 目前已经发展为最主流使用的一种应用层协议 . HTTP 协议目前有三个大版本: HTTP / 1 和 HTTP / 2 都是基于TCP 传输控制协议传输数据。最新版本的…

14.Redis之JAVASpring客户端

1.引入依赖 此时就会引入操作 redis 的依赖了~~ 2.yml配置 spring:redis:host: 127.0.0.1port: 8888 3.准备 前面使用 jedis,是通过 Jedis 对象里的各种方法来操作 redis 的.此处Spring 中则是通过 StringRedisTemplate 来操作 redis .最原始提供的类是 RedisTemplateStrin…

NGINX完全指南_实现高性能负载均衡的进阶实操指南

欢迎阅读 2024 版《NGINX 完全指南》。OReilly 已连续九年出版《NGINX 完全指南》,我们不断进行更新以跟上 NGINX 做出的诸多改进。如今,NGINX 是全球最受欢迎的 Web 服务器。该产品于 2004 年首次发布,并不断发展,以满足现代应用…

防火墙技术基础篇:NAT转发之——Smart NAT(No-PAT和NAPT结合)

防火墙技术基础篇:NAT转发之——Smart NAT(No-PAT和NAPT结合) 传统的NAT技术在处理大规模网络和复杂应用场景时存在一定的局限性。为了解决这些问题,一种名为Smart NAT的新型网络技术应运而生。本文将详细介绍Smart NAT的概念、原…

mybatis关联查询使用resultMap查询到了多条,结果返回一条。

今天在写代码时候,遇到了一个很让我费解的问题,在使用关联查询的时候,在明明数据库里面,已经查到了两条数据,结果resultMap这个集合里面,就只返回一条数据。 数据库的SQL: mybatis的xml里面的r…

Linux系统编程学习笔记

1 前言 1.1 环境 平台:uabntu20.04 工具:vim,gcc,make 1.2 GCC Linux系统下的GCC(GNU Compiler Collection)是GNU推出的功能强大、性能优越的多平台编译器,是GNU的代表作品之一。gcc是可以在多种硬体平台上编译出可执…

SAM遥感图像处理开源新SOTA!在GPU上实现40倍加速,不损准确性

在遥感图像处理领域,通过SAM捕捉复杂图像特征和细微差异,可以实现高精度的图像分割,提升遥感数据的处理效率。这种高度的准确性让SAM遥感展现出了比传统方法更优越的性能。 不仅如此,这种策略灵活普适的特性还能拓展遥感技术的应…

苹果手机数据不慎删除?这4个方法果粉必看!

苹果手机该怎么恢复丢失的数据呢?有时候会因为使用不当或者是被他人误删等原因,导致重要的数据丢失,这时我们需要找回丢失手机数据,小编给大家分享4种恢复苹果手机数据的技巧,大家赶紧来学一学吧! 一、iclo…