社区
图形处理/算法
帖子详情
灰度图像转化为伪彩色图像 VC
乐天的猪
2011-01-20 06:29:09
256的灰度图像,如何转化为RGB的伪彩色图像呢? 期待高人回答。
...全文
489
8
打赏
收藏
灰度图像转化为伪彩色图像 VC
256的灰度图像,如何转化为RGB的伪彩色图像呢? 期待高人回答。
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
fengbingchun
2011-01-24
打赏
举报
回复
用opencv的cvCvtColor函数
xiuxianshen
2011-01-24
打赏
举报
回复
Google些伪彩的算法,这个应该是些比较基础的,没有太大的难度,实在写不出来也可以去看看LS说的cvCvtColor的源码
renxu350
2011-01-22
打赏
举报
回复
处理完之后可以保存成BMP格式文件
renxu350
2011-01-22
打赏
举报
回复
放大4倍的原因是RGB颜色表对应的灰度值是255被4等分后的灰度值
renxu350
2011-01-22
打赏
举报
回复
比如:
灰度值 = 000 对应 ARGB = 0x00000000
灰度值 = 063 对应 ARGB = 0x00FF0000
灰度值 = 127 对应 ARGB = 0x0000FF00
灰度值 = 191 对应 ARGB = 0x000000FF
灰度值 = 255 对应 ARGB = 0x00FFFFFF
在这些灰度值之间的灰度值,使用线性过渡插值得到对应的RGB值,
示范一下,比如 000 ~ 063 之间:
BYTE gGrayScale[600][800];//由原图片得到
DWORD gARGB[600][800];
//外面套一个600X800(图片尺寸)的for循环,不写了,LZ应该懂的
int i = 600;
int j = 800;
//循环里面是这样的,采用逐级判断:
if(gGrayScale <= 63)
{
gARGB[i][j] = ((gGrayScale[i][j]) * 4) << 16;//先放大4倍,然后左移16位
}
if(gGrayScale <= 127)
{
gARGB[i][j] = ((gGrayScale[i][j]) * 4) << 8;//先放大4倍,然后左移8位
}
if(gGrayScale <= 191)
{
gARGB[i][j] = ((gGrayScale[i][j]) * 4);//放大4倍,不需要移位
}
//最后的值是在 192 - 255 之间
gARGB[i][j] = (((gGrayScale[i][j]) * 4) << 16) + (((gGrayScale[i][j]) * 4) << 8) + ((gGrayScale[i][j]) * 4);
关于图片的操作有 CreateDIBitmap() 等等函数,具体请查阅MSDN
乐天的猪
2011-01-22
打赏
举报
回复
这个我也考虑到了,但就是对图片的具体操作不知道如何进行,原本一个字节,现在三个字节,如何存储,如何显示呢?
renxu350
2011-01-20
打赏
举报
回复
使用索引出的RGB值建立新的RGB图像
renxu350
2011-01-20
打赏
举报
回复
可以预先建立一个RGB颜色表,
然后使灰度值作为索引值,索引RGB颜色表中的值
基于
vc
的
伪
彩色增强
总的来说,这个基于
VC
的
伪
彩色增强项目展示了如何利用C语言和Windows API进行图像处理,提供了将
灰度图像
转化
为
伪
彩色图像
的实用方法。对于学习图像处理和C++编程的学生,这是一个很好的实践案例,可以加深对图像...
基于
VC
平台的PTW格式红外图像处理研究
以及
伪
彩色处理,将
灰度图像
转换为
彩色图像
,使得视觉效果更加丰富,便于观察和分析。 图像增强通常包括直方图均衡化、对比度拉伸等方法,能有效改善图像的视觉效果。点运算则涉及加法、减法、乘法等基本运算,以及...
傅立叶图像变换频谱显示
VC
代码
4. **显示频谱**:程序会将得到的频谱图像显示出来,通常使用灰度或
伪
彩色表示不同的频率强度。高频部分通常用明亮的颜色表示,低频部分用暗色表示。 5. **反傅立叶变换**:为了将频谱信息转换回图像,可以应用逆...
图像处理--
灰度图像
伪
彩色(MFC
VC
++)
灰度图像
的
伪
彩色处理的原理如下: 根据色彩学方面的研究结果,将
灰度图像
对应到red , green , blue三个通道上,最后将三个通道的颜色值合成为需要显示的RGB颜色值即可。 1、强度分层技术 把一幅图像描述为三维...
使用C++语言读取*.mat文件中的数据
借助于Matlab的接口函数,在Visual Studio中使用C++语言读取*.mat文件中的数据(这里主要是2维矩阵(
灰度图像
)和3维矩阵(
彩色图像
))到OpenCV中的Mat数据结构中并显示图像,同时实现将
灰度图像
转化
为
伪
彩色图像
...
图形处理/算法
19,472
社区成员
50,678
社区内容
发帖
与我相关
我的任务
图形处理/算法
VC/MFC 图形处理/算法
复制链接
扫一扫
分享
社区描述
VC/MFC 图形处理/算法
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章