【正文】
1,dataFile)!=1){printf(Can not write bfSize in the file header.\n);fclose(dataFile);return1;}if(fwrite(amp。bmihbiYPelsPerMeter,sizeof(LONG),1,dataFile)!=1){printf(Can not read biYPelsPerMeter in the info header.\n);fclose(dataFile);return1;}if(fread(amp。bmihbiBitCount,sizeof(WORD),1,dataFile)!=1){printf(Can not read biBitCount in the info header.\n);fclose(dataFile);return1;}if(fread(amp。bmihbiSize,sizeof(DWORD),1,dataFile)!=1){printf(Can not read biSize in the info header.\n);fclose(dataFile);return1;}if(fread(amp。bmfhbfSize,sizeof(DWORD),1,dataFile)!=1){printf(Can not read bfSize in the file header.\n);fclose(dataFile);return1;}if(fread(amp。k==0amp。圖像增強(qiáng) 直方圖均衡化處理C語言實(shí)現(xiàn)ifndef BMP_H_3_INCLUDEDdefine BMP_H_3_INCLUDED typedef unsigned short WORD;typedef unsigned long DWORD;typedef long LONG;typedef unsigned char BYTE;typedef struct tagBITMAPFILEHEADER{//bmfh WORD bfType;DWORD bfSize;WORD bfReserved1;WORD bfReserved2;DWORD bfOffBits;}BITMAPFILEHEADER;typedef struct tagBITMAPINFOHEADER{//bmih DWORD biSize;LONG biWidth;LONG biHeight;WORD biPlanes;WORD biBitCount;DWORD biCompression;DWORD biSizeImage;LONG biXPelsPerMeter;LONG biYPelsPerMeter;DWORD biClrUsed;DWORD biClrImportant;}BITMAPINFOHEADER;typedef struct tagRGBQUAD{//rgbq BYTE rgbBlue;BYTE rgbGreen;BYTE rgbRed;BYTE rgbReserved;}RGBQUAD;typedef struct tagBITMAPINFO{BITMAPINFOHEADER bmiHeader;RGBQUAD bmiColors[1];}BITMAPINFO;endif//BMP_H_3_INCLUDEDinclude include include include include include includeBITMAPFILEHEADER bmfh;BITMAPINFOHEADER bmih;BYTE*imgData;int N;void readData();void HistTrans();int ReadFileHeader(BITMAPFILEHEADER*);int ReadInfoHeader(BITMAPINFOHE