欢迎来到天天文库
浏览记录
ID:21841780
大小:58.00 KB
页数:19页
时间:2018-10-25
《用c语言进行数字图像处理》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、WORD文档可编辑用c语言进行数字图像处理其实,数字图像处理有几步呢?一共三步。第一步,读入图片。第二步,处理图片。第三步,保存图片。而第二步主要涉及的是处理图像的算法,所以,我在这里就不多说了。而第一步和第三步是为第二步做位图文件结构的声明:BMP.h#ifndefBMP_H_INCLUDED#defineBMP_H_INCLUDEDtypedefunsignedshortWORD;typedefunsignedlongDWORD;typedeflongLONG;typedefunsignedchar
2、BYTE;typedefstructtagBITMAPFILEHEADER{//bmfhWORDbfType;DWORDbfSize;WORDbfReserved1;WORDbfReserved2;DWORDbfOffBits;}BITMAPFILEHEADER;typedefstructtagBITMAPINFOHEADER{//bmihDWORDbiSize;LONGbiWidth;LONGbiHeight;WORDbiPlanes;WORDbiBitCount;DWORDbiCompression
3、;DWORDbiSizeImage;LONGbiXPelsPerMeter;LONGbiYPelsPerMeter;DWORDbiClrUsed;DWORDbiClrImportant;技术资料专业分享WORD文档可编辑}BITMAPINFOHEADER;typedefstructtagRGBQUAD{//rgbqBYTErgbBlue;BYTErgbGreen;BYTErgbRed;BYTErgbReserved;}RGBQUAD;typedefstructtagBITMAPINFO{BITMAPIN
4、FOHEADERbmiHeader;RGBQUADbmiColors[1];}BITMAPINFO;#endif//BMP_H_INCLUDED主程序:main.c#include#include#include#include#include#include#include"BMP.h"BITMAPFILEHEADERbmfh;BITMAPINFOHEADERbmih;BYTE*img
5、Data;boolbReadBMFH=false;boolbReadBMIH=false;boolbReadPixel=false;//检查路径是否合法:文件能打开;以bmp为后缀名intCheckFilePath(char*filepath);//读入位图的文件头intReadFileHeader(char*filepath,BITMAPFILEHEADER*bmfh);//打印位图的文件头voidPrintFileHeader(BITMAPFILEHEADER*bmfh);//读入位图的信息头int
6、ReadInfoHeader(char*filepath,BITMAPINFOHEADER*bmih);//打印位图的信息头voidPrintInfoHeader(BITMAPINFOHEADER*bmih);//创建8位位图的调色板技术资料专业分享WORD文档可编辑intCreatePalette(RGBQUADpal[]);//读入位图的像素数据intReadPixelData(char*filepath,BYTE*imgData);//计算每行像素所占的字节数LONGGetLineBytes(in
7、timgWidth,intbitCount);//打印位图的像素数据voidPrintPixelData(BYTE*imgData,intwidth,intheight,intbitCount);//打印菜单选项voidPrintMenu();//另存为位图intSaveAsImage(char*filepath);//显示位图voidShowImage(char*filepath);//保存文件头intSaveFileHeader(FILE*fp);//保存信息头intSaveInfoHeader(F
8、ILE*fp);//保存调色板intSaveColorPalette(FILE*fp);//保存像素数据intSavePixelData(FILE*fp);intmain(){charfilepath[256];charsaveasfilepath[256];inti;intwidth;intheight;intbitCount;DWORDdwLineBytes;intselect;intq=0;system("echooff");syst
此文档下载收益归作者所有