颜色的RGB-计算HSV公式色度/饱和度/亮度 简化代码

简介: 计算颜色的HSV值本文提供全流程,中文翻译。 Chinar 坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 —— 高分辨率用户请根据需求调整网页缩放比例) Chinar —— 心分享、心创...

计算颜色的HSV值


本文提供全流程,中文翻译。

Chinar 坚持将简单的生活方式,带给世人!

(拥有更好的阅读体验 —— 高分辨率用户请根据需求调整网页缩放比例)


Chinar —— 心分享、心创新!

助力快速完成 Color HSV

为新手节省宝贵的时间,避免采坑!



全文高清图片,点击即可放大观看 (很多人竟然不知道)


1

HSV —— 色彩模型


通过颜色的 RGB 值计算出对应的 HSV

H Hue 色度

S Saturation饱和度

V Value 纯度
举个栗子黑白88

using UnityEngine;
using UnityEngine.UI;


/// <summary>
/// 通过RGB —— HSV
/// </summary>
public class ChinaCalculateColorHsv : MonoBehaviour
{
    private Image TestImage;   //测试图片,用来颜色取值
    private Image TargetImage; //目标图片,用来将HSV转RGB,赋值
    private float R;
    private float G;
    private float B;
    private float H;
    private float V;
    private float S;
    private float max;
    private float min;


    void Start()
    {
        TestImage   = GameObject.Find("TestImageColor").GetComponent<Image>();
        TargetImage = GameObject.Find("TargetImage").GetComponent<Image>();
    }


    public void CalculateColorHsv()
    {
        R   = TestImage.color.r;
        G   = TestImage.color.g;
        B   = TestImage.color.b;
        max = Mathf.Max(R, G, B);
        min = Mathf.Min(R, G, B);
        if (R == max)
        {
            H = (G - B) / (max - min);
        }
        if (G == max)
        {
            H = 2 + (B - R) / (max - min);
        }
        if (B == max)
        {
            H = 4 + (R - G) / (max - min);
        }
        H = (H / 6);
        if (H < 0)
        {
            H = (H / 360 + 1);
        }

        S = (max - min) / max;
        V = (Mathf.Max(R, G, B));
        print((H));
        print((S));
        print((V));


        TargetImage.color = Color.HSVToRGB(H, S, V);
    }
}

2

Example —— 实例


这里以 Unity 来举个例子

取一个图片的颜色 RGB ,得到 HSV

然后通过内置函数 Color.HSVToRGB(H, S, V) HSV 转为 Color 赋值给新图片
举个栗子黑白88
这里写图片描述


支持

May Be —— 搞开发,总有一天要做的事!


拥有自己的服务器,无需再找攻略!

Chinar 提供一站式教程,闭眼式创建!

为新手节省宝贵时间,避免采坑!


先点击领取 —— 阿里全产品优惠券 (享受最低优惠)


1 —— 云服务器超全购买流程 (新手必备!)

2 —— 阿里ECS云服务器自定义配置 - 购买教程(新手必备!)

3—— Windows 服务器配置、运行、建站一条龙 !

4 —— Linux 服务器配置、运行、建站一条龙 !





技术交流群:806091680 ! Chinar 欢迎你的加入


END

本博客为非营利性个人原创,除部分有明确署名的作品外,所刊登的所有作品的著作权均为本人所拥有,本人保留所有法定权利。违者必究

对于需要复制、转载、链接和传播博客文章或内容的,请及时和本博主进行联系,留言,Email: ichinar@icloud.com

对于经本博主明确授权和许可使用文章及内容的,使用时请注明文章或内容出处并注明网址

相关文章
|
6月前
RGB颜色模型和HSV颜色模型
RGB颜色模型和HSV颜色模型“【5月更文挑战第22天】”
174 2
|
1月前
|
算法 计算机视觉 Python
圆形检测算法-基于颜色和形状(opencv)
该代码实现了一个圆检测算法,用于识别视频中的红色、白色和蓝色圆形。通过将图像从RGB转换为HSV颜色空间,并设置对应颜色的阈值范围,提取出目标颜色的区域。接着对这些区域进行轮廓提取和面积筛选,使用霍夫圆变换检测圆形,并在原图上绘制检测结果。
69 0
简单好用的图片取色器【可取RGB数值】
这篇文章介绍了如何使用Snipaste工具进行截图和取色,包括按下快捷键F1截图、选择图片区域、移动鼠标取色以及复制颜色值的步骤,并提供了操作界面的截图。
|
5月前
|
机器学习/深度学习 算法
五种基于RGB色彩空间统计的皮肤检测算法
五种基于RGB色彩空间统计的皮肤检测算法
41 0
|
6月前
|
API 计算机视觉
【OpenCV】—图像对比度、亮度值调整
【OpenCV】—图像对比度、亮度值调整
|
算法
HSV颜色模型
HSV颜色模型
474 0
HSV颜色模型
RGB颜色模型
RGB颜色模型
441 0
RGB颜色模型
数据增强 | 旋转、平移、缩放、错切、HSV增强
数据增强 | 旋转、平移、缩放、错切、HSV增强
305 0
数据增强 | 旋转、平移、缩放、错切、HSV增强
FPGA-像素操作(二值图片,异或操作,暗通道rgb)
FPGA-像素操作(二值图片,异或操作,暗通道rgb)
234 0
FPGA-像素操作(二值图片,异或操作,暗通道rgb)
Halcon颜色通道分离与合并RGB--HSI--HSV;饱和度/亮度均衡
Halcon颜色通道分离与合并RGB--HSI--HSV;饱和度/亮度均衡
968 0