社区
图形处理/算法
帖子详情
图像如何由8位变为24位?
guogaofeng1219
2009-09-02 09:05:34
高手帮帮忙吧,摄像头传过来8位的图像数据,但怎么能把它变为24位的图呢?
...全文
1019
8
打赏
收藏
图像如何由8位变为24位?
高手帮帮忙吧,摄像头传过来8位的图像数据,但怎么能把它变为24位的图呢?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
rover___
2009-09-09
打赏
举报
回复
照着调色板把RGB抄出来就可以了
千真万确!!!!!!!!!1
pady_pady
2009-09-08
打赏
举报
回复
说算你改为24位的,色彩值是不会增加的,只会使用调色板中256色索引值转换为24位真彩DIB,存储空间大了
像素*2 - 256,效果反而是一样的,并且不利于压缩.
jxufeng
2009-09-07
打赏
举报
回复
这个最简单了。
所谓8位,就是用0-255个数组,里面存了256或者少一些的RGB值,rgb实际上是包含3个unsinged char的结构体。实际的图像是一个从左到右,从上到下的二维数组(坐标格子,即一个像素点吗),每个格子里存的是0-255某个数字,即所谓的颜色索引。一张8位图片,最多也就是256中颜色,因为每个像素只需要一个unsinged char,也就是8位表示,其含义不言而喻。
24位,rgb3个byte即24位,这种图就没有调色板,颜色种类就多的去了,2的24次方-1吧,每个点都是自己真实的颜色。此外还有32位的,另外的8位是作为通道,其实就是两种图片叠着放,你可以指定某种颜色透明,然后就可以做到透明什么的效果,这是网页和gif动画的一种方法。
8位转成24位,你可以用cimage打开图片,通过调色板获取某一点的rgb,然后建立一个24位的图像,把rgb赋值过去,就行了。具体技巧看看msdn的例子。因为rgb的排列方式好像是bgr,读取数组好像用getpexil会很慢,要用getpixeladdress来做等等事项。
不过,说起来容易,做起来还是挺费神!!!
最后,我想知道你的目的,做成24位后,其结果就是图片尺寸加大了(理论上是3倍-3*256字节),图像不可能改变质量啊,某种程度上讲是没有意义的而有点犯傻的意思,所以没有人写8位转24位的程序!如果再用jpg来压缩会有图像质量的损失,还不如直接用8位的好。如果想变小,8位采用png压缩是很不错的。况且,8位 24位计算机都支持,jpg png也都支持啊。
guogaofeng1219
2009-09-07
打赏
举报
回复
谢谢大家。3楼给出的网站打不开啊。详细的我再 看看
lambochan
2009-09-04
打赏
举报
回复
貌似摄像头传来的所谓8位数据都是YCbCr的数据.自己check清楚先.
dirdirdir3
2009-09-04
打赏
举报
回复
http://idcnews.net/html/edu/20071229/80106.html
其实照着调色板把RGB抄出来就可以了...........
jtujtujtu
2009-09-02
打赏
举报
回复
8位 彩色的?有没有颜色索引表?
如果有,直接根据索引表填充RGB
或者
8位 灰度?
直接根据灰度值填RGB
guogaofeng1219
2009-09-02
打赏
举报
回复
24位转8位的程序比较多,但现在有一幅8位的BMP图,想把它的位深度变为24位,该怎么弄啊?高手帮帮忙啊!
8叉数算法处理将
24
位
真彩色
变为
8
位
伪彩色
图像
使用八叉树算法实现真彩色(
24
Bits)转256色.要实现此功能,主要就是从真彩色中查找出最能代表整张
图像
的256种颜色,建立调色板.八叉树就是为了找出这256种颜色. 1.) 建立八叉树 八叉树节点的特性就是每个节点最多有8个字节点,编号为0~7 . 以RGB值建立八叉树,首先建立根节点(Root),然后分别以RGB的每一
位
分别组成一个0~
位
图深度 PIL.image.save()保存图片后size变大
今天,想用PIL在bmp图片上画带颜色的矩形。代码如下: from PIL import Image,ImageDraw img = Image.open("test.bmp”) img = img.convert("RGB") draw = ImageDraw.Draw(img) draw.rectangle((100, 200, 300, 400), width=6, outline=(0,...
将
24
位
位
图转换
8
位
位
图
bmpTest.h :介绍BMP文件的格式及结构定义 bmpTest.cpp :
24
bitBMP颜色数据到256色
位
图颜色数据的转换函数实现,具体算法可参考以 前的一个帖子 bmpTransfer.cpp : 读入一个
24
bitBMP文件,转换成一个256色BMP文件的程序 编译完成后得到的程序,如bmpTransfer.exe 执行 bmpTransfer file1 f
如何把图片设置成
24
位
图/
8
位
图??
1、如下,我们
图像
处理时会遇到这种问题? 2、我们只需要用画图软件打开图片,并保存文
24
位
图/
8
位
图即可 3、这样就可以随意处理一些不符合
图像
处理规则的一些图片了 转载于:https://www.cnblogs.com/qidaiymm/p/6018868.html...
【数字
图像
】C++
8
位
和
24
位
BMP
位
图的平滑、锐化、二值化处理,以及
24
位
真彩图的灰度化
由于
8
位
和
24
位
BMP的像素存储方式不同,所以不能用相同的函数对
位
图进行处理,因此我设计了两个类分别处理
8
位
和
24
位
BMP。 程序运行时,首先提示输入
位
图深度。 然后输入
位
图名称。 程序会输出
位
图的文件头和信息头。 对于
8
位
位
图,程序提示选择下列处理方式: 1.平滑处理 2.4邻域锐化 3.8邻域锐化 4.二值化 选择处理方式后,程序提示输入要保存的
位
图名称。然后返回是否成功处理的信息。 对于
24
位
位
图,程序提示选择下列处理方式: 1.平滑处理 2
图形处理/算法
19,464
社区成员
50,678
社区内容
发帖
与我相关
我的任务
图形处理/算法
VC/MFC 图形处理/算法
复制链接
扫一扫
分享
社区描述
VC/MFC 图形处理/算法
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章