原地址:http://cg2010studio.wordpress.com/2012/10/02/rgb與cielab色彩空間轉換/

之前有研究CIE L*a*b*色彩空間,現在想更進一步探討RGB色彩空間轉換至CIE L*a*b*色彩空間。

  • 這時候我們想知道,為何需要將RGB色彩空間轉換至CIE L*a*b*色彩空間?

一般影像在儲存像素的色彩時,使用RGB色彩空間來表示一個像素的顏色,這種表示方法可用來傳達一個像素的色彩在紅、綠、藍三個頻道(channel)中的相關性;但是,從RGB表示法無法得知像素的明亮度(luminance)飽和度(saturation)色相(hue)為何,因此,我們將像素的色彩由RGB色彩空間轉換至CIELAB(或CIE L*a*b*)。

接下來介紹RGB和CIELAB如何互轉。

#RGB與CIELAB色彩空間轉換

CIELAB色彩空間具有視覺上的均勻性(perceptually uniform),也就是說值的變化量和視覺上感知到的變化量是相同的,例如:值從100變為110與值從0變為10的感覺是相同的,這種表示方法較接近人類的視覺系統,而其它的色彩空間則較不具有這種特性。

CIELAB色彩空間的表示法為(L*, a*, b*),L*代表黑色到白色間的位置,也就是明亮度(luminance),範圍是0~100;a*為綠色(green)到紫紅色(magenta)間的位置,範圍是-500~500;b*為藍色(blue)到黃色(yellow)間的位置,範圍是-200~200;距離圓心愈近飽和度愈底。

為CIELAB色彩空間。

為當L*為25、50、75 時的橫切面。

#RGB 轉CIELAB 色彩空間

先將RGB的值調整為介於0~1之間,再將色彩空間轉換至CIE XYZ色彩空間,以下為其轉換矩陣:

再由CIE XYZ色彩空間轉換至CIELAB色彩空間,方法如下:

#CIELAB轉RGB色彩空間

先將CIELAB色彩空間轉換至CIE XYZ色彩空間,方法如下:

再由CIE XYZ色彩空間轉換回RGB色彩空間,轉換矩陣如下:

最後,將RGB的範圍由0~1調整為0~255。

參考:WiKi - Lab color space、台科大資管所碩士論文—秀拉點描派之電腦模擬。

转载于:https://www.cnblogs.com/lanye/p/3736335.html

RGB與CIELAB色彩空間轉換相关推荐

  1. opencv︱图像的色彩空間cvtColor(HSV、HSL、HSB )及相关色彩学

    一.色彩空间理论 几种色彩空间: 1.RGB Red 红色,0-255 Green 绿色,0-255 Blue 蓝色,0-255 2.HSI HSI色彩空间可以用一个圆锥空间模型来描述.用这种 描述H ...

  2. 繁體與簡體之間的轉化

    中文簡體與繁體之間的轉換方便之處在於每一個簡體字與每一個繁體字一一對應.這樣我們就可以利用map.對每一個字符進行一一轉換. import java.io.BufferedReader; import ...

  3. oracle convertobject,oracle.sql進行轉換。TIMESTAMPLTZ@71d9d55b Java時間戳

    0 Mule ESB use the apache dbutils framework. You can extend the MapListHandler class to implement yo ...

  4. 三十六進制之間隨便轉換

    去年在網上給一家公司投簡歷的時候,對方要求寫一個任意進制轉換的函數,當時沒有回過神來,也不知道JAVA中有這樣的函數,呵呵.于是就自己操刀,寫了這個三十六進制之音隨便轉的函數.不過,權當練習吧,如果你 ...

  5. word另存为html emz和wmz,轉載:如何將offcie 2003文檔(.doc、.xls、.ppt)轉換成mht文檔...

    轉載自:http://www.cnblogs.com/shanyou/archive/2007/11/28/975941.html 要實現 office 文檔轉換成 MHTML 文檔,首先會將 off ...

  6. 技術的變與不變之間...Silverlight 3.0的驚鴻一撇

    今天在公司開會的時候,一位作者好友透過MSN通知我Scott的BLOG上果然開始出現了Silverlight 3的消息,我一聽不得了,第一時間看了Scott的BLOG,大意是說,Silverlight ...

  7. 【WIN10】移植opencc到WIN10-UWP,實現自己的繁簡轉換工具

    花了週末兩天時間,將opencc移植成WIN10-UWP可用的庫,並完成自己的繁簡轉換工具. 我的繁簡轉換工具下載地址為:https://www.microsoft.com/store/apps/9n ...

  8. 影像處理之空間及頻率定義域

    http://zip.nvp.com.tw/forum.php?mod=viewthread&tid=1499&extra=page%3D11 影像處理可分為空間定義域(Spatial ...

  9. SmartFox中的類型轉換

    今天在使用SmartFox中的用戶變量UserVariables 時發現了一個問題,就是在使用方法SetUserVariables 來發送坐標的時候,在調試信息中發現發送和接受到的變量都是空的,測試了 ...

最新文章

  1. Java中定义VO事件的问题
  2. Telnet不是内部或外部命令解决办法
  3. WCF分布式开发步步为赢(15):错误契约(FaultContract)与异常处理(ExceptionHandle)
  4. android 如何将电话簿SDN数字和其他普通的数字混合在一起?
  5. 如何实现一个分布式 RPC 框架
  6. 微服务架构之外的选择——基于服务架构
  7. vba 日期加一年_VBA究竟值不值得审计学?
  8. Firefox about
  9. 史上最全最常用批处理260多个打包下载
  10. Taro+react开发(30)引入静态资源地址
  11. servlet——三兄弟的另外两个:过滤器/监听器
  12. react native笔记-个人记录-初始化工程遇到的问题
  13. Django的url别名功能的使用
  14. python写代码酷炫插件_使用 Python 制作酷炫多彩的 Jenkins 插件词云图
  15. hmcl手机版_hmcl启动器手机版
  16. js格式化日期或者日期时间
  17. JS敏感信息泄露:不容忽视的WEB漏洞
  18. 不用任何工具重装Win7系统
  19. NTP实现联网校对时间详解
  20. Windows 7 新功能 - AppLocker

热门文章

  1. java jodatime明天_使用Joda-Time优雅的处理日期时间
  2. 有趣的勾股数及其计算
  3. 谷歌浏览器,安卓内嵌谷歌内核webview使用高德JSAPI定位失败的问题解决!
  4. python 系统管理_实例讲解python用户管理系统
  5. Canoe和Canalyzer的Panel Designer界面卡住no responding
  6. 周董新歌搞崩QQ,抓取20W评论看看歌迷在说啥
  7. iOS两种调用拨打电话方式(亲测)
  8. Labview读取Excel文件方法
  9. java字符串转数组的方法,写给正在求职的Java开发
  10. Conv1D 训练数据完整示例