石鑫华视觉论坛

 找回密码
 注册会员
查看: 216|回复: 0

[原创] LabVIEW如何显示RGB64彩色图像

[复制链接]
  • TA的每日心情

    昨天 08:16
  • 签到天数: 3383 天

    连续签到: 5 天

    [LV.Master]2000FPS

     楼主| 发表于 2024-4-17 18:28:49 | 显示全部楼层 |阅读模式 来自:广东省东莞市 电信

    注册登陆后可查看附件和大图,以及购买相关内容

    您需要 登录 才可以下载或查看,没有账号?注册会员

    x
    LabVIEW如何显示RGB64彩色图像
    image1.png
    LabVIEW如何显示RGB64彩色图像视频号(短版,不能超过30分钟)
    LabVIEW如何显示RGB64彩色图像B站(长版)
    LabVIEW环境中,并不能很好的显示RGB64彩色图像,除非RGB64彩色图像的像素格式本身就是16位的,最大值能达到65535;而如果像素格式只是12位最大值是409510位最大值是1023,那么这种RGB64彩色图像在LabVIEW中显示的话,则是一个比较黑的彩色图像,毕竟4095对于65535来说,还是非常小的。LabVIEW Vision中的Image控件对于U16I16的灰度图像是可以正常映射成U8值范围内进行显示,但是彩色图像则不能正常映射到RGB32值范围内进行显示。这里则使用了两种方法,也能将RGB64的彩色图像映射到其他范围内进行正常显示。当然,和MAX中的映射显示或灰度图像的映射显示还是有差别的,会改变彩色图像像素本身的值,这里对于图像处理来说并不会有什么影响,因为VDM中能处理RGB64的函数非常少,这里只是为显示效果上能更好一些,因此才做此研究。
    使用的彩色相机的像素格式是BayerRG12ADC12位,那么其像素值最大值则为4095。使用RGB64来输出图像并保存图像。默认情况下LabVIEW、视觉助手、VBAI等环境中打开RGB64图像时,均显示的是比较黑的图像,只有在MAX中采集图像时才会显示的比较明亮。这个可以参考论坛的LabVIEW Image显示RGB64Bughttp://visionbbs.com/thread-30194-1-1.html
    这里使用了两种方法,一种是将RGB64转换为RGB32来显示。需要将RGB64中的4095映射到RGB32中的255;另一种方法,仍然使用RGB64来显示,但是会将RGB64中的4095映射到65535,这样也是可以正常显示的。但是无论哪种方法,都是会改变原始图像的像素值的,并不能像灰度16位图像那样能映射到8位的灰度图像显示,并保持灰度值不变。
    image2.png
    RGB64RGB32
    image3.png
    RGB64RGB32的显示效果
    image4.png
    RGB644095映射到65535
    image5.png
    RGB644095映射到65535
             使用上面的两种方法,均可将实际显示的比较黑的RGB64彩色图像显示为比较明亮的彩色图像。虽然说值改变了,但是效果上还是比较明显的。
    VI示例LV2020版:
    LabVIEW如何显示RGB64彩色图像.zip (62.66 KB, 下载次数: 0, 售价: 2 元)
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 注册会员

    本版积分规则

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

    QQ|石鑫华视觉论坛 |网站地图

    GMT+8, 2024-11-22 07:34

    Powered by Discuz! X3.4

    © 2001-2024 Discuz! Team.

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