得知DIP文章66日

转载请注明文章出处:http://blog.csdn.net/tonyshengtan ,出于尊重文章作者的劳动,转载请标明出处!文章代码已托管。欢迎共同开发:https://github.com/Tony-Tan/DIPpro

开篇废话

色彩空间介绍最后两种与人类感知相对较接近的两种空间。彩色图像处理后面的内容大部分用在图像的基础处理,而假设想学习图像分析。应该開始学习一些模式识别和机器学习的算法,打算近期開始学习一些,而且开一个新的博客主题,欢迎讨论。。。

今天介绍下两种相对较接近色彩定义的,人的视觉仅仅能分辨颜色的三种变化:亮度、色调、饱和度。HSI和HSV即表示其相对的变量,当中H(Hue)表示色调。S(Saturation)表示饱和度,I/V(Intensity/Value)表示亮度/明度。HSI和HSV作为相对颜色,但在彩色图像处理中使用广泛。以下来逐一介绍这两种空间,和其与RGB空间的转换。

HSI色彩空间

色调H(Hue): 与光波的波长有关。它表示人的感官对不同颜色的感受。如红色、绿色、蓝色等。它也可表示一定范围的颜色,如暖色、冷色等。

饱和度S(Saturation): 表示颜色的纯度,纯光谱色是全然饱和的,增加白光会稀释饱和度。饱和度越大,颜色看起来就会越鲜艳。反之亦然。

亮度I(Intensity): 相应成像亮度和图像灰度,是颜色的明亮程度。

RGB和HSI的转换几种转换公式:






HSV色彩空间

HSV模型通经常使用于计算机图形应用中。在用户必须选择一个颜色应用于特定图形元素各种应用环境中,经常使用HSV 色轮。在当中,色相表示为圆环;能够使用一个独立的三角形来表示饱和度和明度。典型的,这个三角形的垂直轴指示饱和度,而水平轴表示明度。在这样的方式下,选择颜色能够首先在圆环中选择色相。在从三角形中选择想要的饱和度和明度。

HSV模型的还有一种可视方法是圆锥体。在这样的表示中。色相被表示为绕圆锥中心轴的角度。饱和度被表示为从圆锥的横截面的圆心到这个点的距离,明度被表示为从圆锥的横截面的圆心到顶点的距离。

某些表示使用了六棱锥体。

这样的方法更适合在一个单一物体中展示这个HSV色彩空间;可是因为它的三维本质,它不适合在二维计算机界面中选择颜色。

HSV色彩空间还能够表示为相似于上述圆锥体的圆柱体,色相沿着圆柱体的外圆周变化。饱和度沿着从横截面的圆心的距离变化,明度沿着横截面究竟面和顶面的距离而变化。这样的表示可能被觉得是HSV色彩空间的更精确的数学模型。可是在实际中可区分出的饱和度和色相的级别数目随着明度接近黑色而降低。

此外计算机典型的用有限精度范围来存储RGB值。这约束了精度。再加上人类颜色感知的限制。使圆锥体表示在多数情况下更有用。

转换公式:

RGB->HSV



HSV->RGB



总结

今天主要介绍HSx模型,这类色彩空间与色彩定义相应。在后面的彩色图像处理中将大量用到。

待续。。

$(function () {
$('pre.prettyprint code').each(function () {
var lines = $(this).text().split('\n').length;
var $numbering = $('

    ').addClass('pre-numbering').hide();
    $(this).addClass('has-numbering').parent().append($numbering);
    for (i = 1; i ').text(i));
    };
    $numbering.fadeIn(1700);
    });
    });

    版权声明:本文博主原创文章。博客,未经同意不得转载。

彩色图像--色彩空间 HSI(HSL)、HSV(HSB)的更多相关文章

  1. Atitit  rgb yuv  hsv HSL 模式和 HSV(HSB) 图像色彩空间的区别

    Atitit  rgb yuv  hsv HSL 模式和 HSV(HSB) 图像色彩空间的区别 1.1. 色彩的三要素 -- 色相.明度.纯度1 1.2. YUV三个字母中,其中"Y&quo ...

  2. js helper(hsv/hsb转rgb颜色,uuid,金额小写转大写)

    hsv/hsb转rgb颜色 //h:[0,360],s:[0,100],v:[0,100] //return r:[0,256], g:[0,256],b:[0,256] function hsvto ...

  3. 【转载】颜色空间-RGB、HSI、HSV、YUV、YCbCr的简介

    转载自缘佳荟的博客. 颜色通常用三个相对独立的属性来描述,三个独立变量综合作用,自然就构成一个空间坐标,这就是颜色空间.而颜色可以由不同的角度,用三个一组的不同属性加以描述,就产生了不同的颜色空间.但 ...

  4. 彩色图像--色彩空间 YIQ 、YUV 、YCbCr 、YC1C2 和I1I2I3

    学习DIP文章64天 转载请注明文章出处:http://blog.csdn.net/tonyshengtan .出于尊重文章作者的劳动,转载请标明出处.文章代码已托管,欢迎共同开发:https://g ...

  5. 彩色图像--色彩空间 CMY(K)场地

    得知DIP文章63日 转载请注明文章出处:http://blog.csdn.net/tonyshengtan .出于尊重文章作者的劳动,转载请标明出处!文章代码已托管.欢迎共同开发:https://g ...

  6. 彩色图像--色彩空间 RGB系列

    学习DIP第62天 转载请标明本文出处:http://blog.csdn.net/tonyshengtan ,出于尊重文章作者的劳动,转载请标明出处!文章代码已托管,欢迎共同开发:https://gi ...

  7. 彩色图像--色彩空间 CIELAB、CIELUV

    学习DIP第65天 转载请标明本文出处:http://blog.csdn.net/tonyshengtan ,出于尊重文章作者的劳动,转载请标明出处!文章代码已托管,欢迎共同开发:https://gi ...

  8. 彩色图像--色彩空间 CMY(K)空间

    学习DIP第63天 转载请标明本文出处:***http://blog.csdn.net/tonyshengtan ***,出于尊重文章作者的劳动,转载请标明出处!文章代码已托管,欢迎共同开发:http ...

  9. hsv hsb rgb lab

    lab  欧式距离 反映 人类所能感受到的这两种颜色的差异

随机推荐

  1. HDU4870:Rating(DP)

    Problem Description A little girl loves programming competition very much. Recently, she has found a ...

  2. 栈实现java

    栈是一种“先去后出”的抽象的数据结构.例如:我们在洗盘子的时候,洗完一个盘子,将其放在一摞盘子的最上面,但我们全部洗完后,要是有盘子时,我们会先从最上面的盘子开始使用,这种例子就像栈的数据结构一样,先 ...

  3. [转载] C++11新特性

    C++11标准发布已有一段时间了, 维基百科上有对C++11新标准的变化和C++11新特性介绍的文章. 我是一名C++程序员,非常想了解一下C++11. 英文版的维基百科看起来非常费劲,而中文版维基百 ...

  4. 聊聊并发(六)——ConcurrentLinkedQueue的实现原理分析

    1. 引言 在并发编程中我们有时候需要使用线程安全的队列.如果我们要实现一个线程安全的队列有两种实现方式:一种是使用阻塞算法,另一种是使用非阻塞算法.使用阻塞算法的队列可以用一个锁(入队和出队用同一把 ...

  5. curl 命令详解(转)

    命令事例 1.读取网页,将网页内容全部输出 curl http://www.linuxidc.com 2.保存网页.下载文件 以page.html命名下载网页:curl –o page.html ht ...

  6. RSA算法加密解密

    该工具类中用到了BASE64,需要借助第三方类库:javabase64-1.3.1. jar 注意:RSA加密明文最大长度117字节,解密要求密文最大长度为128字节,所以在加密和解密的过程中需要分块 ...

  7. 【C语言】推断一个数的奇偶(位操作)

    //推断一个数的奇偶 #include <stdio.h> int is_signal(int num) { if (num & 1) return 1; else return ...

  8. MAC随机修改批处理

    原文:MAC随机修改批处理 @echo off mode con cols=70 lines=20 title MAC随机修改工具 color 3F setlocal enabledelayedexp ...

  9. android cocos2dx游戏-加入截图和分享微博功能

    本文介绍怎样在游戏中添加分享功能,截屏后分享到微博及其他社交网络的功能. public class ShareSupport { // when you want to use share(),fir ...

  10. 【Android基础】短信的发送

    //Button的点击事件 @Override public void onClick(View v) { // 接受者电话号码 Uri uri = Uri.parse("smsto:123 ...