颜色的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 服务器配置、运行、建站一条龙 !



70

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


END

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

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

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

相关文章
|
9月前
|
数据可视化
绘制热图时看不出颜色差异?四种方式转换处理使结果显而“易”见
绘制热图时看不出颜色差异?四种方式转换处理使结果显而“易”见
18259 2
|
13天前
|
API 计算机视觉
【OpenCV】—图像对比度、亮度值调整
【OpenCV】—图像对比度、亮度值调整
|
11月前
|
计算机视觉
计算机图形|RGB与HSV模型的转化
计算机图形|RGB与HSV模型的转化
112 0
计算机图形|RGB与HSV模型的转化
|
算法
HSV颜色模型
HSV颜色模型
332 0
HSV颜色模型
RGB颜色模型
RGB颜色模型
319 0
RGB颜色模型
FPGA-像素操作(二值图片,异或操作,暗通道rgb)
FPGA-像素操作(二值图片,异或操作,暗通道rgb)
186 0
FPGA-像素操作(二值图片,异或操作,暗通道rgb)
|
算法 Java 计算机视觉
常用的像素操作算法:图像加法、像素混合、提取图像中的ROI
常用的像素操作算法:图像加法、像素混合、提取图像中的ROI
314 0
常用的像素操作算法:图像加法、像素混合、提取图像中的ROI
Halcon颜色通道分离与合并RGB--HSI--HSV;饱和度/亮度均衡
Halcon颜色通道分离与合并RGB--HSI--HSV;饱和度/亮度均衡
811 0
|
计算机视觉 Python
CV:cv2实现检测几何形状并进行识别、输出周长、面积、颜色、形状类型
CV:cv2实现检测几何形状并进行识别、输出周长、面积、颜色、形状类型
CV:cv2实现检测几何形状并进行识别、输出周长、面积、颜色、形状类型