如何把16位的灰度图数据转化为RGB?

Ralph 2000-07-07 06:30:00
现在我想把一个16位的数据阵列转化为一个灰度图。
但是由于VC 的CDC函数中支持显示彩色数据, 如RGB,

:-( 所以我只好想招把灰度数据转为RGB了。

谁会?? 快教教我!!
...全文
680 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
trivita 2000-07-10
  • 打赏
  • 举报
回复
比较经典的算法是设置一个非线性映射
大体上是:
Red分量随灰度递减;
Green分量随灰度现递增,后递减;
Blue分量随灰度递增;
每个分量的函数可以灵活选择
hoyle 2000-07-08
  • 打赏
  • 举报
回复
that's easy, 16 bits gray scale (565) -> 16 bits color (565)
change your RGBQUAD, that's all.
灰度和彩色图像处理,word版本 可编辑,附分析与总结 读取二进制文件lab3prob4,文件的尺寸是435*580,图像数据类型为‘uint8’,(1)读取并显示图像,colormap设置为gray;(2)重新显示(1)中图像,colormap设置为HSV; (3)自己尝试定义一个新的colormap,幅度值的变化范围为[0 255]。 分别读取二进制文件lab3prob3r, lab3prob3g, lab3prob3b, 图像数据类型为‘uint8’,图像的尺寸是1024*1024,(1)合并RGB三通道,并显示图像;(2)对RGB三个通道分别进行灰度线性处理,实现三个通道的灰度值均值为140,均方差为60,然后再合并显示图像;(3)把RGB颜色模型转换到HSV颜色模型,对V分量进行线性变换实现均值为140,均方差为60,然后显示新的图像;(4)比较(2)和(4)中图像,进行简单分析和说明; 创建如下图1所示图像,一个圆为红色,一个圆为蓝色,另外一个圆为绿色,圆的半径为100。(1)组建一个RGB图使其显示如下颜色,B的中心坐标(400,375),G的中心坐标(300,420),R的中心坐标(300,300);(2)分别使R,G,B中的一个值为0.5 (原来为1,单化后的值范围(0-1)),并显示得到的图的颜色;(3)创建如图2所示的颜色盘(中心坐标(100,100)),半径为100;(提示使计算在HIS空间,然后利用HSV2rgb转化);

33,006

社区成员

发帖
与我相关
我的任务
社区描述
数据结构与算法相关内容讨论专区
社区管理员
  • 数据结构与算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧