自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

QT圖片有彩到灰

移動開發(fā)
本文介紹的是關于QT圖片有彩到灰的過程,文章內容不多,但能偶實現效果,簡單的代碼實現,請先看內容。

QT圖片有彩到灰這是本文的內容,

QT的圖像類有QImage,QPixmap,QBitmap,QPicture。

不過QPixmap和QBitmap是用來優(yōu)化圖像顯示的,QPicture貌似可以記錄QPixmap的操作記錄,這個還沒仔細看

QImage可以處理每個像素,這正是我所需要的查看幫助文檔,發(fā)現QImage貌似沒有直接讀取為灰度圖的(難道是我沒發(fā)現?)于是采用最傻的方法:把RGB值設為相同的值,貌似很浪費空間的樣子,思路就是讀取每個像素的RGB值,再由此算出灰度值。

最大眾化的計算公式是Gray = 0.3*R + 0.59*G + 0.11*B

QT中提供的方法有 int qGray ( QRgb rgb )

其計算公式是 Gray = (R * 11 + G * 16 + B * 5)/32

  1. void Picture::paintEvent(QPaintEvent*){   
  2.      QImage  image;   
  3.     image = QImage("airplane.jpg").scaled(200,200);   
  4.      int w,h;   
  5.      w = image.width();   
  6.      h = image.height();   
  7.      QImage iGray(w,h,QImage::Format_RGB32);     
  8.      for(int i=0; i<200; i++){  
  9.          for(int j=0;j<200; j++){  
  10.              QRgb pixel = image.pixel(i,j);  
  11.              int gray = qGray(pixel);  
  12.             QRgb grayPixel = qRgb(gray,gray,gray);  
  13.             iGray.setPixel(i,j,grayPixel);  
  14.          }  
  15.      }   
  16.      QPainter painter(this);  
  17.      painter.drawImage(0,0,image);  
  18.      painter.drawImage(200,0,iGray);  

運行結果:

QT圖片有彩到灰

小結:QT圖片有彩到灰介紹到這,通過以上的內容,還有效果圖的實現,是不是感覺這個效果其實也挺好實現的呢?

【編輯推薦】

Qt中使圖片像素變小

淺談Qt中多線程編程

在Qt中如何寫控制臺程序

CSS圖片替換的最佳實踐

利用Qt繪圖實現QWT繪制科學圖表

責任編輯:zhaolei 來源: 互聯網
相關推薦

2011-08-30 15:10:46

Qt圖片數據庫

2011-06-14 13:07:54

Qt 圖片

2011-06-20 15:52:14

Qt Designer 控件

2011-06-28 14:39:00

Qt 圖片

2011-06-15 15:29:25

Qt C++

2020-11-09 14:07:53

PyQtQt編程

2011-04-21 10:02:34

2015-10-28 10:31:47

2015-01-26 17:30:39

華為有線無線/華為

2011-11-08 14:44:12

愛普生噴墨打印機

2009-03-10 19:03:11

Linux圖形環(huán)境桌面

2011-05-27 11:18:29

激光打印機解析

2011-06-24 16:41:14

QT OpenCV 框架

2020-11-18 09:30:29

圖片懶加載前端瀏覽器

2011-09-27 14:53:15

奔圖炫彩機

2011-03-25 09:47:25

PracticalJa

2012-06-12 11:28:51

精益掃描儀

2018-09-02 16:03:43

自動化與響應SOAR事件響應
點贊
收藏

51CTO技術棧公眾號