91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 4.67MB
    文件類型: .zip
    金幣: 2
    下載: 0 次
    發布日期: 2023-09-16
  • 語言: C/C++
  • 標簽: bmp??c++??

資源簡介

考查結構體、文件讀寫、簡單的圖像處理算法 從bmp文件(如灰度圖像woman.bmp、彩色圖像lenna.bmp)讀入圖像數據 對圖像數據進行均衡處理 將均衡處理后的圖像數據保存為新的bmp文件 要求編程只使用C語言自帶庫 功能 必做功能1:灰度圖像的直方圖均衡 必做功能2:彩色圖像的直方圖均衡

資源截圖

代碼片段和文件信息

#include?
#include?
#include?

#pragma?pack(1)?//取消對齊,如果不取消的話?sizeof(BITMAPFILEHEADER)就是16,而不是14

using?namespace?std;

typedef?short?int?UINT16;
typedef?unsigned?char?BYTE;
typedef?unsigned?short?WORD;
typedef?unsigned?int?DWORD;
typedef?long?LONG;


typedef?struct?tagBITMAPFILEHEADER{
WORD?bfType;//文件類型,必須是0x424D,即字符“BM”??這個屬性必須注釋掉,不然由于內存對齊的影響后面會出錯
DWORD?bfSize;//文件大小
WORD?bfReserved1;//保留字
WORD?bfReserved2;//保留字
DWORD?bfOffBits;//從文件頭到實際位圖數據的偏移字節數
}BITMAPFILEHEADER;

typedef?struct?tagBITMAPINFOHEADER{
DWORD?biSize;//信息頭大小
LONG?biWidth;//圖像寬度
LONG?biHeight;//圖像高度
WORD?biPlanes;//位平面數,必須為1
WORD?biBitCount;//每像素位數
DWORD??biCompression;?//壓縮類型
DWORD??biSizeImage;?//壓縮圖像大小字節數
LONG??biXPelsPerMeter;?//水平分辨率
LONG??biYPelsPerMeter;?//垂直分辨率
DWORD??biClrUsed;?//位圖實際用到的色彩數
DWORD??biClrImportant;?//本位圖中重要的色彩數
}BITMAPINFOHEADER;?//位圖信息頭定義

typedef?struct?tagRGBQUAD{
BYTE?rgbBlue;?//該顏色的藍色分量
BYTE?rgbGreen;?//該顏色的綠色分量
BYTE?rgbRed;?//該顏色的紅色分量
BYTE?rgbReserved;?//保留值
}RGBQUAD;//調色板定義

typedef?struct?tagBITMAPINFO?{
??BITMAPINFOHEADER?bmiHeader;
??RGBQUAD??????????bmiColors[1];
}BITMAPINFO?*LPBITMAPINFO?*PBITMAPINFO;

typedef?struct?tagIMAGEDATA//像素信息
{
BYTE?blue;
BYTE?green;
BYTE?red;
}IMAGEDATA;


void?bmpTransform(const?BITMAPINFOHEADER?&bmpInfounsigned?char*?data)
{

????int?BPP?=?bmpInfo.biBitCount;//BPP(Bits?Per?Pixel)每像素的比特數
????int?Width?=?bmpInfo.biWidth;//每行的像素數
????int?Height?=?bmpInfo.biHeight;
????int?RowSize?=?4*(BPP*Width/32);//每行的字節數

????int?channels?=?BPP/8;//每個像素字節數也就是幾個顏色通道
????for(int?start?=?0;?start?????????int?C[255]?=?{0};
????????double?P[255]?=?{0}Q[255]?=?{0};//灰度圖
????????for(int?i?=?0;?i?????????????for(int?j?=?start;?j?????????????????unsigned?char?k?=?data[RowSize*i+j];//我這里改成unsigned?int都會出錯不知道為什么別人的沒錯
????????????????C[k]++;
????????????}
????????}
????????//P
????????for(int?i?=?0;?i?????????//Q
????????Q[0]?=?P[0];
????????for(int?i?=?1;?i?????????//dataX
????????for(int?i?=?0;?i?????????????for(int?j?=?start;?j?????????????????unsigned?char?k?=?data[RowSize*i+j];
????????????????data[RowSize*i+j]?=?round(255*Q[k]);
????????????}
????????}
????}
}


int?main(int?argc?char*?argv[])
{
????int?a?=?sizeof(BITMAPFILEHEADER);
????BITMAPFILEHEADER?bmpFile;
????BITMAPINFOHEADER?bmpInfo;
????RGBQUAD*?colorTable;

????string?inFileName;
????string?outFileName;
????switch(argc){
????????case?1:
????????????cout?<????????????cin?>>?inFileName;
????????????outFileName?=?string(inFileName).insert(inFileName.find(“.“)“_eq“);//insert會改變原string,這里先拷貝一份后進行insert
????????????break;
????????case?2:
????????????inFileName?=?argv[1];//ar

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2019-03-06?23:30??2018C語言大作業_圖像直方圖均衡算法的實現\
?????文件?????1727074??2018-12-21?16:03??2018C語言大作業_圖像直方圖均衡算法的實現\2018C語言大作業_圖像直方圖均衡算法的實現.pptx
?????文件??????786486??2008-05-31?22:36??2018C語言大作業_圖像直方圖均衡算法的實現\lenna.bmp
?????文件???????66614??2018-12-15?17:31??2018C語言大作業_圖像直方圖均衡算法的實現\woman.bmp
?????目錄???????????0??2019-03-06?23:30??2018C語言大作業_圖像直方圖均衡算法的實現\項目文件\
?????目錄???????????0??2019-03-06?23:30??2018C語言大作業_圖像直方圖均衡算法的實現\項目文件\bmp_img\
?????文件??????????17??2019-02-03?21:44??2018C語言大作業_圖像直方圖均衡算法的實現\項目文件\bmp_img\1.bin
?????目錄???????????0??2019-03-06?23:30??2018C語言大作業_圖像直方圖均衡算法的實現\項目文件\bmp_img\bin\
?????目錄???????????0??2019-03-06?23:30??2018C語言大作業_圖像直方圖均衡算法的實現\項目文件\bmp_img\bin\Debug\
?????文件?????1962696??2019-02-11?16:30??2018C語言大作業_圖像直方圖均衡算法的實現\項目文件\bmp_img\bin\Debug\bmp_img.exe
?????文件???????66614??2019-02-11?16:32??2018C語言大作業_圖像直方圖均衡算法的實現\項目文件\bmp_img\bin\Debug\woman.bmp
?????文件????????1071??2019-02-03?21:20??2018C語言大作業_圖像直方圖均衡算法的實現\項目文件\bmp_img\bmp_img.cbp
?????文件?????????124??2019-02-11?16:29??2018C語言大作業_圖像直方圖均衡算法的實現\項目文件\bmp_img\bmp_img.depend
?????文件?????????361??2019-02-11?16:34??2018C語言大作業_圖像直方圖均衡算法的實現\項目文件\bmp_img\bmp_img.layout
?????文件??????786486??2008-05-31?22:36??2018C語言大作業_圖像直方圖均衡算法的實現\項目文件\bmp_img\lenna.bmp
?????文件????????6372??2019-02-11?16:30??2018C語言大作業_圖像直方圖均衡算法的實現\項目文件\bmp_img\main.cpp
?????目錄???????????0??2019-03-06?23:30??2018C語言大作業_圖像直方圖均衡算法的實現\項目文件\bmp_img\obj\
?????目錄???????????0??2019-03-06?23:30??2018C語言大作業_圖像直方圖均衡算法的實現\項目文件\bmp_img\obj\Debug\
?????文件???????45512??2019-02-11?16:30??2018C語言大作業_圖像直方圖均衡算法的實現\項目文件\bmp_img\obj\Debug\main.o
?????目錄???????????0??2019-03-06?23:30??2018C語言大作業_圖像直方圖均衡算法的實現\項目文件\bmp_img\test\
?????文件????????1860??2019-02-10?19:03??2018C語言大作業_圖像直方圖均衡算法的實現\項目文件\bmp_img\test\1.cpp
?????文件??????400281??2019-02-10?19:03??2018C語言大作業_圖像直方圖均衡算法的實現\項目文件\bmp_img\test\1.exe
?????文件????????5682??2019-02-10?21:16??2018C語言大作業_圖像直方圖均衡算法的實現\項目文件\bmp_img\test\2.cpp
?????文件???????66614??2019-02-10?21:08??2018C語言大作業_圖像直方圖均衡算法的實現\項目文件\bmp_img\test\imhist.bmp
?????文件???????66614??2018-12-15?17:31??2018C語言大作業_圖像直方圖均衡算法的實現\項目文件\bmp_img\test\woman.bmp
?????文件??????????14??2019-02-03?22:00??2018C語言大作業_圖像直方圖均衡算法的實現\項目文件\bmp_img\TEST.$$$
?????文件??????786486??2019-02-11?16:03??2018C語言大作業_圖像直方圖均衡算法的實現\項目文件\bmp_img\test.bmp
?????文件???????66614??2018-12-15?17:31??2018C語言大作業_圖像直方圖均衡算法的實現\項目文件\bmp_img\woman.bmp
?????文件???????66614??2019-02-11?16:32??2018C語言大作業_圖像直方圖均衡算法的實現\項目文件\bmp_img\woman2.bmp
?????文件???????66614??2019-02-11?16:30??2018C語言大作業_圖像直方圖均衡算法的實現\項目文件\bmp_img\woman_eq.bmp

評論

共有 條評論