Qt QImage如何判断图片里某个颜色值占的比例

 1 /*
 2 在图片里查找指定颜色的比例
 3 */
 4 int Widget::qimage_color_Find(QImage qimage)
 5 {
 6  int num = 0;//记录颜色的像素点
 7  float rate;//要计算的百分率
 8  quint8 r,g,b;
 9  //遍历图片的每一个像素点
10  for(int i = 0; i < qimage.height();i++) //行数
11  {
12   for(int j = 0; j <qimage.width();j++) //列数
13   {
14    QRgb rgb=qimage.pixel(j,i);
15    r=qRed(rgb);
16    g=qGreen(rgb);
17    b=qBlue(rgb);
18  
19    if((r <= 120 && g <= 120 && b <= 120))
20    {
21     num++;
22    }
23   }
24  }
25  rate = (float)num / (float)(qimage.height() * qimage.width());
26  
27  //阀值为 0.99777 表示为全黑
28  if(rate>0.60)
29  {
30    //qDebug()<<"qimage:故意遮挡摄像头";
31  }
32  qDebug()<<"qimage:比例:"<<rate;
33  return 0;
34 }
原文地址:https://www.cnblogs.com/ybqjymy/p/15736691.html