999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于QT的數字圖像的灰度化處理程序設計

2015-02-24 03:23:59趙之源
決策與信息 2015年23期
關鍵詞:設計

趙之源

北京郵電大學 北京 100876

基于QT的數字圖像的灰度化處理程序設計

趙之源

北京郵電大學 北京 100876

介紹了使用QT對BMP圖像進行灰度化處理的相關概念和方法。根據BMP格式圖像的格式類型和存儲原理,介紹對BMP格式圖像進行讀取和寫入方法,并在此基礎上介紹了對BMP圖片進行灰度化的方法。

數字圖像;灰度化處理;QT;C++;位圖

大家生活中很多情況下需要將一張彩色的圖片轉變成黑白的圖片,也就是灰度圖,但是大部分人都是直接使用PS或美圖秀秀這些圖片處理的軟件進行,而對圖片灰度化的過程不是十分了解甚至一無所知。很多時候我們需要把彩色圖像轉換為黑白圖像然后進行相關的計算等。而QT的界面設計使得開發帶界面的軟件更為方便,且可用C++語言編寫,運行效率高,執行速度快,適合圖像處理。因此用QT開發一款圖像灰度化的處理程序十分方便也能幫助我們理解灰度化的原理和過程。

1、灰度化原理

生活中,我們見到的大部分物品都是彩色的,我們生活在一個五顏六色的世界中,我們通常用來描述一個物體的顏色的諸如赤、橙、黃、綠、青、藍、紫這些顏色名詞有很多,但是即使是這樣,仍然不能涵蓋自然界的所有顏色或者說即使用這些詞來描述一個物體的顏色仍舊不能描述得很準確。其實每一種復雜的顏色都是可以用紅綠藍這三種顏色按照不同的比例調配出來的,所以不同的顏色種類根據三種顏色所占比例的不同是不同的,數量是非常大的。

同樣,不同的色光還有不同的亮度,同樣是紅色,有的比較亮,有的比較暗。由此可見,顏色是無窮無盡的,那黑白圖像又是怎么一回事呢?圖像的灰度化的原理又是什么呢。

其實圖像灰度化就是根據公示計算出每個像素點的亮度,從而直接用亮度來表示圖片,而不是用以前的R(紅)、G(綠)、B(藍)值。計算公示如下:

這是一個矩陣計算公示,公式中的Y就是亮度值,實際上就是通過原像素點的紅綠藍的值計算出亮度值。通?;叶葓D的數據用8位進行存儲,這樣的圖片灰度有256級,也就是說這種灰度化的圖片中包含256中不同亮度的像素點,255是白色,0是黑色,中間是不同程度的灰色。

而對于不同位數的BMP圖像的灰度化過程也是不同的。

對于2 4位的B M P圖像只需要通過公式Y=0.299R+0.587G+0.144B計算出各像素點的亮度值,然后將亮度值附給該點的RGB值即R=B=G=Y就行了。

而對于其他位數的灰度化也有兩種方法。如對于8位的BMP圖像

Ⅰ.獲取第一個顏色表項中的R G B值,然后利用公式Y=0.299R+0.587G+0.144B計算出該顏色的亮度值Y,并令該顏色表項的RGB值都等于此亮度值Y。同理,再完成對剩余所有顏色表項的處理,便可實現灰度化。

Ⅱ.在8位BMP文件的位圖數據中,首先獲取任意第i行,第j列像素點的顏色表索引值index,根據該索引值找到與其對應的顏色表項color[index],并獲取該顏色表項的RGB值,然后利用公式Y=0.299R+0.587G+0.144B計算出該顏色的亮度值Y,再令index=Y;在完成上述處理之后,再對顏色表項按順序灰度化,即color[index]的R=G=B=index。至此,8位BMP文件的位圖數據就表示每個像素真實的亮度值。這里介紹的示例程序采用上述方法ii實現灰度化。

2、程序設計步驟

程序是基于QT設計的,使用C++編程語言,所以設計過程包括界面設計和程序設計思路。

2.1 程序界面設計

程序需要用戶輸入數據,故設計用戶數據接口即可。

2.2 程序流程設計

程序設計的實現過程為:

(1)讀取BMP文件的文件頭、信息頭、顏色表、像素點數據等位圖數據。

其中QT中封裝的獲得文件名代碼如下:

namebmp=QFileDialog::getOpenFileName(this,"打開bmp文件","/","files(*.bmp)");//獲得bmp文件名

(2)根據灰度化原理進行處理,

對8比特的BMP圖片進行灰度化的代碼如下:

for(inti=0;i

{

for(intj=0;j

{

index=data[i][j];

////////24bit

if(Bitmapinfoheader.biBitCount==24)

{

doubley3=0.299*data[i][j*3]+0.587*data[i][3*j+1]+0.114*data[i] [3*j+2];

inty4=(int)((y3+0.5)*10/10.0);

if(ui->checkBox->isChecked())

y4=255;

data[i][j*3]=y4;

data[i][j*3+1]=y4;

data[i][j*3+2]=y4;

}

////////8bit

if(Bitmapinfoheader.biBitCount==8)

y0=0.299*Rgbquad[index].rgbRed+0.587*Rgbquad[index]. rgbGreen+0.114*Rgbquad[index].rgbBlue;

(3)將新圖片數據寫到新文件中。

///////寫新文件

FILE*fp1;

fp1=fopen((dir1+"/"+name1).toStdString().c_str(),"wb");

fwrite(&Bitmapfileheader,14,1,fp1);

fwrite(&Bitmapinfoheader,40,1,fp1);

///////8bit

if(Bitmapinfoheader.biBitCount==8)

{

fwrite(Rgbquad,4*colornum,1,fp1);

for(intn=0;n

fwrite(data[n],w1,1,fp1);

}

3、程序測試實驗

本實驗用的是500乘500的8位BMP格式的彩色圖像。灰度化結果如圖2所示

4、其他

這里只介紹了8比特彩色圖像的灰度化,在進行4比特圖像的灰度化的過程中時要注意數據部分中,每個字節中包含兩個像素的索引值,每次讀出一個字節后需要進行處理。

猜你喜歡
設計
二十四節氣在平面廣告設計中的應用
河北畫報(2020年8期)2020-10-27 02:54:06
何為設計的守護之道?
現代裝飾(2020年7期)2020-07-27 01:27:42
《豐收的喜悅展示設計》
流行色(2020年1期)2020-04-28 11:16:38
基于PWM的伺服控制系統設計
電子制作(2019年19期)2019-11-23 08:41:36
基于89C52的32只三色LED搖搖棒設計
電子制作(2019年15期)2019-08-27 01:11:50
基于ICL8038的波形發生器仿真設計
電子制作(2019年7期)2019-04-25 13:18:16
瞞天過?!律O計萌到家
藝術啟蒙(2018年7期)2018-08-23 09:14:18
設計秀
海峽姐妹(2017年7期)2017-07-31 19:08:17
有種設計叫而專
Coco薇(2017年5期)2017-06-05 08:53:16
從平面設計到“設計健康”
商周刊(2017年26期)2017-04-25 08:13:04
主站蜘蛛池模板: 国产一区二区影院| 草逼视频国产| 国产精品视频白浆免费视频| 国产男女免费完整版视频| 亚洲欧美日韩中文字幕在线| 久爱午夜精品免费视频| 萌白酱国产一区二区| 国产欧美视频在线| 99久久国产自偷自偷免费一区| 四虎永久在线| 亚洲娇小与黑人巨大交| 国产亚卅精品无码| 亚瑟天堂久久一区二区影院| 亚洲婷婷六月| 2020国产免费久久精品99| 免费国产不卡午夜福在线观看| 亚洲成a人片77777在线播放| 午夜无码一区二区三区| 熟妇人妻无乱码中文字幕真矢织江| 欧美在线黄| 欧美国产成人在线| 91九色视频网| 久久婷婷六月| 久久久久久久蜜桃| 91久草视频| 少妇极品熟妇人妻专区视频| 亚洲视频色图| AV片亚洲国产男人的天堂| 亚洲伦理一区二区| 亚洲综合狠狠| 色香蕉网站| 国产超薄肉色丝袜网站| 四虎亚洲国产成人久久精品| 国产乱子伦手机在线| 欧美亚洲另类在线观看| 福利在线一区| 欧美在线网| 国产乱子伦视频三区| 亚洲性影院| 国产 在线视频无码| 国产成人亚洲毛片| 91精品国产无线乱码在线 | 88av在线看| 欧美不卡在线视频| 国产精品尤物铁牛tv | 97青草最新免费精品视频| 精品无码视频在线观看| 欧美a级在线| 色AV色 综合网站| 欧美a级在线| 久久综合干| 国产三区二区| 亚洲大学生视频在线播放| 国产喷水视频| 欧美人与动牲交a欧美精品| 亚洲欧美h| 97人人做人人爽香蕉精品| 国产亚洲精久久久久久久91| 亚洲精选无码久久久| 成年女人a毛片免费视频| 热久久这里是精品6免费观看| 欧美视频在线观看第一页| 国产精品成人观看视频国产| 亚洲 欧美 日韩综合一区| 55夜色66夜色国产精品视频| 91精品久久久久久无码人妻| 18黑白丝水手服自慰喷水网站| 日韩欧美中文字幕一本| 天天摸夜夜操| 九九热精品免费视频| YW尤物AV无码国产在线观看| 国产91小视频| 四虎精品黑人视频| 人妻精品久久无码区| 欧美午夜在线播放| 久久精品aⅴ无码中文字幕 | 波多野结衣一区二区三区四区| 欧美丝袜高跟鞋一区二区 | 国产精品女熟高潮视频| 999国产精品| 国产乱子精品一区二区在线观看| 在线观看国产小视频|