【数字图像处理】bmp文件详细分析
来源:互联网 发布:知乎的童瑶事件 编辑:程序博客网 时间:2024/05/17 16:54
最近在做数字图像处理的助教,每一次都有一个实验,这里我想把每一次实验的内容写出来给自己做一个备注,以后查阅起来也比较方便,相关内容都是从网上查阅,然后自己进行整理和分析的。
第一个作业:BMP文件转换到YUV通道,改变Y,然后后在转换成BMP文件输出。
大家都知道RGB通道是具有颜色相关性的,如果单纯的在每一个颜色通道上进行加减,肯定是不行的,所以就需要首先转换成没有相关性YUV通道上,在进行处理。
转换的公式很简单,我这里就不在贴上来了,但是有以下几点很重要,在转换的时候要尤其注意。
1、BMP文件的扫描方式:从左到右,从下到上,如果一个图像水平线的字节数不是4的倍数,则这行要用空字节补齐(通常ASCII 0)
2、调色板。只有单色(1位),16色(4位)或者256色(8位)的BMP文件才有调色板信息,也就是bmp文件头和信息头后面紧跟着调色板。
在16位 24位和32位的BMP文件中,是不存在调色板信息的。图像的位图数据是紧跟在bmp信息头后面的,一般都是在54位。
3、有个很简单的方法来确定图像的位图信息的位置,就是在图像的文件头的offset信息处获得。
一般编程的时候注意到第一和第二点,图像按行处理,就不会出现大问题了。
补充点小知识:
彩色电视用的是yuv通道,这样做的好处是兼容黑白电视,因为YUV是相互独立的颜色通道,Y代表着亮度,U和V代表着色度。
参考:
YUV:http://zh.wikipedia.org/zh/YUV
BMP:http://zh.wikipedia.org/wiki/BMP
http://blog.ednchina.com/victor29z/204193/message.aspx
- 【数字图像处理】bmp文件详细分析
- VisualC++数字图像处理之BMP文件
- bmp数字图像处理实验
- 数字图像处理--BMP文件的读入和保存
- 数字图像处理--BMP文件的读入和保存
- 数字图像处理基础【一】——BMP文件结构,读写
- 数字图像处理编程之一:熟悉BMP图像格式
- 数字图像处理之打开本地BMP位图
- 【数字图像处理一】BMP图像的读取
- 数字图像处理,bmp位图灰度化
- 数字图像处理 纹理分析
- 【数字图像】BMP位图的头文件
- 【数字图像处理】一个简单的BMP灰度处理程序
- VC6.0图像处理0--bmp文件分析
- BMP文件结构分析
- BMP文件分析
- 数字图像处理,BMP图像操作( biWidth*biBitCount+31)/32*4
- 【数字图像处理】一.MFC详解显示BMP格式图片
- linked服务器的性能一个小测试。
- json 的数据解析
- copy constructor,destructor 和copy assignment operator
- Android: You are not using bash - builds will fail
- Server.MapPath的使用方法
- 【数字图像处理】bmp文件详细分析
- C语言指针学习(二) ---- 指针与数组
- 问题日记:VC MFC 鼠标移动画矩形
- ARP协议
- 努力学习,将来努力赚钱!
- 编译Android源码的全过程
- Jackson---此文章摘自jackson官网例子
- 过滤器和拦截器的区别
- linux音频处理