下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
PAGEPAGE6图像显示与处理实验报告班级:
123杨阳201227073图像显示与处理一、实验目的1、掌握BMP文件格式,熟悉各参数和图像数据的存放方式;2、通过编程实现对图像内容的读取(到内存中;3、完成图像的显示,掌握设备环境上下文(DC)的使用方式。4、对图像进行二值化、求边缘、增强等简单处理。二、实验仪器设备、工具及材料设备:多媒体计算机。软件:VisualStudio6.0及以上版本。材料:灰度图像,24位真彩色图像(均为非压缩BMP格式)等。三、实验内容及步骤1、BMP文件格式BMP是位图WindowsWindows3.0以前的BMP图文件格式与显示设备有关DDBWindows以后的BMP图象文件与显示设备无关,因此称为设备无关位图DIB(device-independentbitmap)格式。BMP文件由4部分组成:位图文件头(BITMAPFILEHEADER、位图信息头BITMAPINFOHEADE、彩色表RGBQUA)如下(来自MSD。typedefstructtagBITMAPFILEHEADER{WORD bfType; //filetype,mustbeBMDWORD bfSize; //size(bytes)ofthebitmapWORD bfReserved1;WORD bfReserved2;DWORD bfOffBits; //offset(bytes)fromthisstructuretothebitmapbits}BITMAPFILEHEADER;typedefstructtagBITMAPINFO{BITMAPINFOHEADERbmiHeader;RGBQUAD }BITMAPINFO,*PBITMAPINFO;typedefstructtagRGBQUAD{BYTErgbBlue;BYTErgbGreen;BYTErgbRed;BYTErgbReserved;}RGBQUAD;typedefstructtagBITMAPINFOHEADER{DWORDbiSize; //bytesrequiredbythestructureLONGbiWidth;LONGbiHeight;WORDbiPlanes; //numberofplanes,mustbeWORDbiBitCount; //numberofbits-per-pixelDWORDbiCompression; //BI_RGB:uncompressedDWORDbiSizeImage; //size(bytes)ofimage,setto0forBI_RGBbitmapsLONGbiXPelsPerMeter; //horizontalresolutionLONGbiYPelsPerMeter; //verticalresolutionDWORDbiClrUsed;DWORDbiClrImportant;}BITMAPINFOHEADER;自然界所有颜色都可由红、绿、蓝R/G/B256级,这256×256×25616001600万种的彩色图,可以用一个表:表中的每一行记录一种颜色的RG、B值。这样当我们表示一个象素的颜色时,只需要指出该颜色是在第几行,即该颜色在表中的索引值。这张R、B的表,就是我们常说的调色板另一种叫法是颜色查找表LUT(LookUpTabl。用B颜色表示所有的颜色叫做真彩色图truecolo。表示真彩色图时,每个象素直接用RG、B三个分量字节表示,而不采用调色板技术。真彩色图又叫做24位色图。在WindowsRGB颜色阵列存储的格式其实BG32位的RGB蓝色B值、绿色G值、红色R值、透明通道A值。透明通道也称Alpha通道,该值是该像0(全透明)255(不透明)之间。2、BMP文件加载加载文件的目的是要得到图片属性及RGB数据,以便将其绘制在DC上。首先,加载文件头:BITMAPFILEHEADERheader;file.read((char*)&header,sizeof(header));然后,加载位图信息头:BITMAPINFOHEADERinfoheader;file.read((char*)&infoheader,sizeof(infoheader));这里我们得到了3各重要的图形属性:宽,高,以及每个像素颜色所占用的位数。接着,要考虑行对齐:Windows4width乘以每个像素的字节数不是4的整数倍时,要在每行的后面补0的数据长度:m_dwBytesPerLine=(((m_pBmpInfoHead->biWidth)+3)>>2)<<2; //灰度m_dwBytesPerLine=(((m_pBmpInfoHead->biWidth*3)+3)>>2)<<2;//24位真彩m_iImageDataSize=m_dwBytesPerLine*m_pBmpInfoHead->biHeight;最后,加载图片数据:对于24位和32位的位图文件,位图数据的偏移量为sizeof(BITMAPFILEHEADER)+sizeof(BITMAPINFOHEADER)也就是说现在可以直接读取图像数据了。m_pImageData=newunsignedchar[m_iImageDataSize];file.read((char*)m_pPixelData,m_iImageDataSize);如果你足够细心,就会发现内存m_pPixelData里的数据的确是BGR格式,可以用个纯蓝色或者是纯红色的图片测试一下。3、BMP文件显示下面是一段GDI绘制代码(一般可在OnDraw函数中实现对于有调色板的图像:CPalette*pOldPal=pDC->SelectPalette(m_pPal,1);::SetStretchBltMode(pDC->m_hDC,COLORONCOLOR);::SetDIBitsToDevice(pDC->m_hDC,0,0,m_pBmpInfoHead->biWidth,m_pBmpInfoHead->biHeight,0,0,0,m_pBmpInfoHead->biHeight,m_pPixelData,(LPBITMAPINFO)m_pBmpInfoHead,DIB_RGB_COLORSpDC->SelectPalette(pOldPal,1);如果没有调色板:::SetStretchBltMode(pDC->m_hDC,COLORONCOLOR);::SetDIBitsToDevice(pDC->m_hDC,0,0,m_pBmpInfoHead->biWidth,m_pBmpInfoHead->biHeight,0,0,0,m_pBmpInfoHead->biHeight,m_pPixelData,(LPBITMAPINFO)m_pBmpInfoHead,DIB_RGB_COLORS4、图像处理一到两个进行尝试。二值化:(比如120。就会出现一个二值化
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年内蒙古呼和浩特青城职业学院高职单招职业技能考试模拟试卷附答案详解(精练)
- 2024年晋盛职业学院单招职业技能考试模拟试卷(原创题)附答案详解
- 2027年四川幼儿师范高专高职单招职业技能考试题库含答案详解(研优卷)
- 2027年青海湖文旅学院高职单招职业适应性测试考试模拟试卷(夺分金卷)附答案详解
- 2025年益阳职业技术学院单招综合素质考试模拟试卷含完整答案详解【有一套】
- 2025年安阳殷墟文旅职业学院高职单招职业适应性测试考试题库含答案详解【综合卷】
- 2025年沙澧食品职业学院单招综合素质考试模拟试卷含答案详解【B卷】
- 2026年勉县汉水职业学院高职单招职业技能考试题库及参考答案详解(黄金题型)
- 2024年安阳洹河职业学院高职单招职业技能考试题库含答案详解(突破训练)
- 2027年四川省攀枝花市高职单招职业技能考试题库及答案详解(各地真题)
- 量子生物学-生命过程的量子效应
- 网吧服务规范标准操作手册样本
- 国有企业采购管理规范 T/CFLP 0027-2020
- 2024年计划员采购员工作总结报告
- 采购部半年度工作总结与计划
- 初中初一到初三英语单词表
- 《电工电子(第二版)》课后部分答案 杨润贤
- 水电技术交底记录
- 《城市经济学》各章-练习题及参考答案
- 高新技术产业开发区洪水影响区域评估报告
- 2023届北京市海淀区第二十中高三第一次调研测试英语试卷含解析
评论
0/150
提交评论