QImage Color Convert to Gray 轉為灰度圖


 

在Qt中,我們有時需要把QImage類的彩色圖片轉為灰度圖,一開始我想的是用QImage的成員函數convertToFormat(),但是試了好多參數,返現轉化的圖片都有問題,不是我們想要的灰度圖,如果誰用成員函數成功轉化成了灰度圖,請在評論區將您的方法寫下,讓博主學習一下。那么還有一種笨辦法,就是手動將R,G,B的值平均一下,然后用平均值更新每一個像素值,也能得到灰度圖。參見代碼如下:

 

// image is the input color image, img is output grey image
QImage img(image);
for (int i = 0; i < img.width(); ++i) {
    for (int j = 0; j < img.height(); ++j) {
        int gray = qGray(img.pixel(i, j));
        img.setPixel(i, j, QColor(gray, gray, gray).rgb());
    }
}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM