EN
/news/show.php/video/83368581.html

介绍了HSV颜色模型和OpenCV的颜色分量范围[推荐收藏]

2025-06-24 10:05:26 来源: 新华社
字号:默认 超大 | 打印 |

在图像处理和计算机视觉领域,颜色模型是理解和分析图像颜色的基础。OpenCV作为一种广泛使用的计算机视觉库,支持各种颜色空间󿀌HSV(Hue, Saturation, Value)由于其直观性和易用性,颜色模型,广泛应用于图像处理和色彩分析。

文章目录。

  • 一、HSV颜色模型概述。
    • 1.1 色调(Hue)
    • 1.2 饱和度(Saturation)
    • 1.3 明度(Value)
  • 二、OpenCV中HSV的颜色分量范围。
    • 2.1 分量范围。
    • 2.2 基本色分量范围表。
  • 三、应用HSV颜色模型。
    • 3.1 示例代码。
  • 四、结论。
  • 书籍推荐。

一、HSV颜色模型概述。

HSV色彩模型是一种基于人眼感知色彩的色彩空间,由A. R. Smith于1978年提出。它将颜色分解成颜色(Hue)、饱和度(Saturation)和谐度(Value)三个重量,颜色以直观的方式表达。HSV颜色模型可以用圆锥体或圆柱体来描述,色调H用极坐标的极角表示,饱和度S用极坐标的极轴长度表示,亮度V用圆柱体的高度表示。
在这里插入图片描述

1.1 色调(Hue)

色调H表示颜色类别,用角度测量#xff0c;取值范围为0°~360°。在HSV模型中,颜色从红色开始,逆时针计算,红色为0°,绿色为120°,蓝色为240°。

1.2 饱和度(Saturation)

饱和度S表示颜色接近光谱色的程度,0%~100%。饱和度越高,#xff0c;颜色越深,颜色越亮;饱和度越低,#xff0c;颜色越浅,越接近白色。在HSV模型中,饱和度为0%,表示纯白色󿀌此时,颜色不含任何光谱色成分。

1.3 明度(Value)

亮度V表示颜色的亮度,值的范围也是0%~100%。明度越高,颜色越亮,#xff11b;明度越低,颜色越暗。当明度为0%时,#xff0c;颜色最暗󿀌黑色。在HSV模型中,明度V与颜色的亮度直接相关,但与颜色的类型和饱和度无关。

二、OpenCV中HSV的颜色分量范围。

2.1 分量范围。

࿰在OpenCV中c;HSV颜色模型的具体重量范围如下:

  • H࿱的色调a;0~180(注意,这与标准HSV模型中的0࿵相同e;360°不同,Opencv将色调的值范围归一化,为了使内部处理更高效)
  • 饱和度S:0~255(0%࿵在标准HSV模型中e;100%不同,OpenCV使用0~255表示)
  • 明度V༚0~255(同样,0%࿵在标准HSV模型中e;100%不同,OpenCV使用0~255表示)

这种表达方式使在OpenCV中处理HSV颜色更加直观和方便c;因为所有的颜色分量都可以用相同的整数范围来表示。

2.2 基本色分量范围表。

2.2 基本色分量范围表如下(注意:下表来源于网络实验,可能会有一点误差。):
在这里插入图片描述

三、应用HSV颜色模型。

在OpenCV中,HSV颜色模型常用于图像的颜色分割、颜色过滤和颜色识别。例如,在提取图像中特定颜色的物体时,首先,图像可以从BGR颜色空间转换为HSV颜色空间󿀌然后根据目标颜色的色调、饱和度和亮度创建掩码(mask),最后,目标物体通过掩码提取。

3.1 示例代码。

以下是使用OpenCV将BGR图像转换为HSV图像,提取特定颜色(如绿色)示例代码:

import。cv2。import。numpy。 as。np。# 读取图像。img。 =cv2。.。imread。(。'image.jpg')。# 将BGR图像转换为HSV图像。hsv_img。 =cv2。.。cvtColor。(。img。,cv2。.。COLOR_BGR2HSV。)。# 定义绿色的色调、饱和度和亮度。lower_green。 =np。.。array。(。[。35。,43。,46。]。)。upper_green。 =np。.。array。(。[。77。,255。,255。]。)。# 根据颜色范围创建掩码。mask。 =cv2。.。inRange。(。hsv_img。,lower_green。,upper_green。)。# 用掩码提取绿色部分。result。 =cv2。.。bitwise_and。(。img。,img。,mask。=mask。)。# 显示结果。cv2。.。imshow。(。'Original Image',img。)。cv2。.。imshow。(。'Mask',mask。)。cv2。.。imshow。(。'Result',result。)。cv2。.。waitKey。(。0)。cv2。.。destroyAllWindows。(。)。

￰在上述代码中c;首先,我们读一张图像󿀌并将其从BGR色彩空间转化为HSV色彩空间。然后,我们定义了绿色色调、饱和度和亮度范围,并创建了一个掩码。最后,我们用掩码从原图中提取绿色部分,并显示结果。

四、结论。

HSV颜色模型以其直观性和易用性,在OpenCV的图像处理和色彩分析中发挥着重要作用。通过了解HSV颜色模型及其颜色重量范围,我们可以更灵活、更有效地处理图像中的颜色信息。

书籍推荐。

Python和Pyspark数据分析;数据科学与大数据技术)

在这里插入图片描述
Spark数据处理引擎是一个惊人的分析工厂:输入原始数据󿀌输出洞察。PySpark用基于Python的API包装了Spark的核心引擎。它有助于简化Spark陡峭的学习曲线,任何在Python数据生态系统中工作的人都可以使用这个强大的工具。

Python和PySpark数据分析有助于您使用PySpark来解决数据科学的日常挑战。您将学习如何跨多台机器扩展处理能力󿀌同时,从任何来源(无论是Hadoop集群、云数据存储还是本地数据文件)获取数据。一旦掌握了基础知识,通过构建机器学习管道,并配合Python、pandas和pyspark代码,探索PySpark的综合多功能特性。

主要内容:

● 组织PySpark代码。

● 管理任何规模的数据。

● 自信地扩展你的数据项目。

● 解决常见的数据管道问题。

● 创建可靠的长期运行任务。

京东:https://item.jd.com/14238656.html。

当当:https://product.dangdang.com/29643891.html。

【我要纠错】责任编辑:新华社