请选择 进入手机版 | 继续访问电脑版

Hello Mat

 找回密码
 立即注册
查看: 4435|回复: 0

XYZ与RGB颜色空间相互转换

[复制链接]

1126

主题

1302

帖子

19

金钱

管理员

Rank: 9Rank: 9Rank: 9

积分
21659
发表于 2017-2-4 22:07:03 | 显示全部楼层 |阅读模式
XYZ —> RGB
  1. var_X = X / 100        //X from 0 to  95.047      (Observer = 2°, Illuminant = D65)
  2. var_Y = Y / 100        //Y from 0 to 100.000
  3. var_Z = Z / 100        //Z from 0 to 108.883

  4. var_R = var_X *  3.2406 + var_Y * -1.5372 + var_Z * -0.4986
  5. var_G = var_X * -0.9689 + var_Y *  1.8758 + var_Z *  0.0415
  6. var_B = var_X *  0.0557 + var_Y * -0.2040 + var_Z *  1.0570

  7. if ( var_R > 0.0031308 ) var_R = 1.055 * ( var_R ^ ( 1 / 2.4 ) ) - 0.055
  8. else                     var_R = 12.92 * var_R
  9. if ( var_G > 0.0031308 ) var_G = 1.055 * ( var_G ^ ( 1 / 2.4 ) ) - 0.055
  10. else                     var_G = 12.92 * var_G
  11. if ( var_B > 0.0031308 ) var_B = 1.055 * ( var_B ^ ( 1 / 2.4 ) ) - 0.055
  12. else                     var_B = 12.92 * var_B

  13. R = var_R * 255
  14. G = var_G * 255
  15. B = var_B * 255
复制代码
RGB —> XYZ
  1. var_R = ( R / 255 )        //R from 0 to 255
  2. var_G = ( G / 255 )        //G from 0 to 255
  3. var_B = ( B / 255 )        //B from 0 to 255

  4. if ( var_R > 0.04045 ) var_R = ( ( var_R + 0.055 ) / 1.055 ) ^ 2.4
  5. else                   var_R = var_R / 12.92
  6. if ( var_G > 0.04045 ) var_G = ( ( var_G + 0.055 ) / 1.055 ) ^ 2.4
  7. else                   var_G = var_G / 12.92
  8. if ( var_B > 0.04045 ) var_B = ( ( var_B + 0.055 ) / 1.055 ) ^ 2.4
  9. else                   var_B = var_B / 12.92

  10. var_R = var_R * 100
  11. var_G = var_G * 100
  12. var_B = var_B * 100

  13. //Observer. = 2°, Illuminant = D65
  14. X = var_R * 0.4124 + var_G * 0.3576 + var_B * 0.1805
  15. Y = var_R * 0.2126 + var_G * 0.7152 + var_B * 0.0722
  16. Z = var_R * 0.0193 + var_G * 0.1192 + var_B * 0.9505
复制代码















算法QQ  3283892722
群智能算法链接http://halcom.cn/forum.php?mod=forumdisplay&fid=73
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Python|Opencv|MATLAB|Halcom.cn

GMT+8, 2022-9-27 09:36 , Processed in 0.214578 second(s), 25 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表