石鑫华视觉 发表于 2017-3-3 18:06:19

如何将U32颜色值转换为RGB表示的颜色分量值

如何将U32颜色值转换为RGB表示的颜色分量值在很多软件中,一种颜色值,通常使用无符号的32位整形来表示,如xFFFFFF(白)、x000000(黑)这样的值,使用这种方式表示时,一种颜色只需要一个值即可表示。而一般我们认知颜色,可能是需要使用RGB三个U8分量来表示,当然也可能是HSL、HIS等颜色模式。这时候就需要将一个值的U32转换成三个值的U8来表示。有时候需要将颜色值转换成对应的三色的RGB值。U32的一个值,,其实可以认为是RGB三个值拼接起来的,因为颜色值的格式是固定的,使用16进制时,就是6位来表示的。因此高2位表示了红色、中两位表示了绿色、低两位表示蓝色。如xD5FF00这样的黄色,其RGB分量就分别是十六进制的xD5、xFF、x00,即十进制的213、255、0。如果没有相应的函数,只发将U32值转换成16进制的字符串,然后按2位拆分,再转换成10进制数值就可以得到RGB值。当然,在NI VISION中是有现成的U32转换成RGB值函数的。在这里使用IMAQ IntegerToColorValue函数即可:IMAQIntegerToColorValue在程序框图中的位置IMAQIntegerToColorValue函数的功能与接线端下面来看一个实例:IMAQIntegerToColorValue函数将U32值转换成RGB分量模式    函数使用相当简单,只需要输入相应的颜色值即可,U32 value接线端创建常量或输入控件后,默认是16进制输入的。函数可以针对单个的U32值、U32的一维数组、U32的二维数组进行转换。LabVIEW2014SP1版下载**** Hidden Message *****
上面提到的一种不用VISION的方式实现见下面的帖子:LabVIEW将表示颜色的U32值转换为RGB对应的分量值LabVIEW实现方式http://visionbbs.com/thread-22940-1-1.html

feng_li 发表于 2017-8-30 23:07:10

图片怎么读出来了

ZHANGj1234 发表于 2017-9-3 16:17:02

zdj9722CH哈哈哈吞吞吐吐

ak47m16u571 发表于 2017-10-5 20:14:41

工业相机,进口CCD,,国产CMOS,USB,1394,GIGE,机器视觉商城https://shop128020756.taobao.com可以选购

我是真的不会 发表于 2019-5-26 17:50:53

为什么将图像转换成u64位之后生成的簇显示各个通道的值都为0

東南博士 发表于 2019-7-5 10:11:56

收拾收拾收拾收拾收拾收拾收拾收拾

158545614 发表于 2019-7-12 08:15:06

淘宝机器视觉商城,明码实价,童叟无欺!https://shop128020756.taobao.com/

maozg 发表于 2019-7-23 13:37:49

谢谢楼主分享,下载学习学习!

hyf1279 发表于 2019-10-8 15:58:03

感谢分享。:handshake

wenwen2022 发表于 2022-3-18 14:13:43

学习,大神,学习,学习,好好学习,感谢,感谢,
页: [1] 2
查看完整版本: 如何将U32颜色值转换为RGB表示的颜色分量值

LabVIEW HALCON图像处理入门教程(第二版)
石鑫华机器视觉与LabVIEW Vision图像处理PDF+视频教程11种全套
《LabVIEW Vision函数实例详解》教程-NI Vision所有函数使用方法介绍,基于NI VISION2020,兼容VDM21/22/23