OpenCV-更改颜色空间-python

OpenCV提供了150多种色彩空间转换方法,但是我们只研究其中两个最常用的:BGR  Gray 和 BGR  HSV.

如果需要查看其他方法也可以运行以下代码

import cv2 as cv
flags = [i for i in dir(cv) if i.startswith('COLOR_')]
print( flags )

现在介绍学习的函数及其参数

cv.cvtColor(src, code, dst, dstCn)

src:输入图像,可以是8位无符号、16位无符号或单精度浮点类型的图像。

code:颜色空间转换代码,这个代码指定了要进行的颜色空间转换类型。OpenCV提供了多种颜色空间转换的选项,如COLOR_BGR2GRAY(BGR转灰度)、COLOR_BGR2HSV(BGR转HSV)等。

dst:(可选)输出图像,它将与输入图像src具有相同的大小和深度。如果未提供,则会创建一个新的图像用于存储转换结果。

dstCn:(可选)目标图像中的通道数。如果此参数设置为0,则通道数将从srccode自动推断得出。

示例代码

import cv2 as cv
import numpy as np
import matplotlib.pyplot as plt

plt.rcParams['font.sans-serif'] = ['SimHei']  # 用来正常显示中文标签
plt.rcParams['axes.unicode_minus'] = False  # 用来正常显示负号

img = cv.imread('p.jpg')
hsv = cv.cvtColor(img, cv.COLOR_BGR2HSV)
gray = cv.cvtColor(img, cv.COLOR_BGR2GRAY)
fig, axes = plt.subplots(nrows=1, ncols=3, figsize=(10, 8), dpi=100)
axes[0].imshow(img[:, :, ::-1])
axes[0].set_title('原图')
axes[1].imshow(hsv[:, :, ::-1])
axes[1].set_title('HSV')
axes[2].imshow(gray, cmap=plt.cm.gray)
axes[2].set_title('Gray')

输出

 

 ## 学习笔记,欢迎各位大佬指错! 

相关推荐

  1. OpenCV的图像颜色空间转换、缩放、裁剪与旋转

    2024-04-23 20:44:01       17 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-04-23 20:44:01       16 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-04-23 20:44:01       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-04-23 20:44:01       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-04-23 20:44:01       18 阅读

热门阅读

  1. web server apache tomcat11-15-proxy

    2024-04-23 20:44:01       13 阅读
  2. wsl ubuntu18.04升级为cmake-3.15.3

    2024-04-23 20:44:01       13 阅读
  3. 前端宝藏图:寻找技术之旅的星辰大海

    2024-04-23 20:44:01       13 阅读
  4. Python爬取网易云平台

    2024-04-23 20:44:01       13 阅读
  5. 【Linux开发 第十一篇】rpm和yum

    2024-04-23 20:44:01       10 阅读
  6. 傅立叶变换与拉普拉斯变换的区别与联系?

    2024-04-23 20:44:01       12 阅读
  7. Rust :快速了解 VecDeque 双向队列

    2024-04-23 20:44:01       12 阅读